Poydevor to'plami - Foundation Kit

The Poydevor to'plami, yoki shunchaki Jamg'arma qisqasi, bu Maqsad-C ramka ichida OpenStep spetsifikatsiya. Bu o'rash sinflari va ma'lumotlar tuzilishi sinflari kabi asosiy sinflarni taqdim etadi. Ushbu ramka NS prefiksidan foydalanadi (for Keyingi qadam, yoki Keyingisi /Quyosh mikrosistemalari ). Shuningdek, bu qismdir Kakao va Tez standart kutubxona.

Sinflar

NSObject

Bu sinf uchun eng keng tarqalgan asosiy sinf Maqsad-C ierarxiyalari va ob'ektlar bilan ishlashning standart usullarini taqdim etadi xotirani boshqarish ular bilan bog'liq va ularni so'roq qilish.

NSString va NSMutableString

Uchun ishlatiladigan sinf mag'lubiyat manipulyatsiya, vakili a Unicode mag'lubiyat (odatda UTF-16 ichki formati sifatida ishlatiladi). NSString o'zgarmasdir va shuning uchun uni faqat ishga tushirish mumkin, ammo o'zgartirilmaydi. NSMutableString - o'zgartirilishi mumkin bo'lgan versiya.

NSValue va NSNumber

NSValue - bu o'rash sinfidir S ma'lumotlar turlari, va NSNumber - bu o'rash sinfidir C kabi ma'lumotlar turlari soni int, ikki baravarva suzmoq. The ma'lumotlar tuzilmalari Foundation Kit-da ibtidoiy turlar emas, faqat ob'ektlar bo'lishi mumkin, shuning uchun ushbu ma'lumotlar tuzilmalarida NSValue va NSNumber kabi o'ramlar ishlatiladi.

NSArray va NSMutableArray

Doimiy indekslashni qo'llab-quvvatlovchi ob'ektlarning dinamik massivi. NSArray o'zgarmas versiyasidir, uni faqat ob'ektlar bilan boshlash mumkin, ammo o'zgartirilmaydi. NSMutableArray moslamalarni qo'shish va olib tashlash orqali o'zgartirilishi mumkin.

NSDictionary va NSMutableDictionary

Noyob kalitlarga ega kalit-qiymat juftlarining assotsiativ ma'lumotlar konteyneri. Elementlarni izlash va qo'shish va olib tashlash (NSMutableDictionary holatida) chiziqli emas. Shu bilan birga, idish ichidagi elementlarning tartibi kafolatlanmagan.

NSSet va NSMutableSet

NSDictionaryga o'xshash noyob tugmachalarning assotsiativ konteyneri, a'zolari ma'lumotlar ob'ektini o'z ichiga olmaydi.

NSData va NSMutableData

Xom bayt ma'lumotlari uchun o'ram. Ushbu turdagi ob'ekt o'z ma'lumotlarini dinamik ravishda taqsimlashi va boshqarishi mumkin, yoki boshqa narsalarga tegishli bo'lgan (masalan, statik raqamli qator) egalik qiladigan va boshqaradigan ma'lumotlarga murojaat qilishi mumkin.

NSDate, NSTimeZone va NSCalendar

Vaqt va sanalarni saqlaydigan va kalendrik ma'lumotlarni aks ettiradigan sinflar. Ular sana va vaqt farqlarini hisoblash usullarini taklif qilishadi. Ular NSLocale bilan birgalikda sanalarni va vaqtlarni ko'plab formatlarda aks ettirish va dunyodagi joylashuvga qarab vaqt va sanalarni sozlash usullarini taqdim etadilar.

Asosiy dasturlar

macOS va iOS

Foundation Kit macOS-ning bir qismidir Kakao API. Voris sifatida boshlang OPENSTEP / Mach, ushbu ramka chetga chiqdi OpenStep muvofiqlik va ba'zi joylarda mos kelmaydi. Foundation Kit iOS-da Kakao teginish API. Ushbu ramka macOS Cocoa-ga asoslangan.[iqtibos kerak ]

GNUstep

Foundation to'plami amalga oshiriladi GNUstep Asosiy paket (libs-base). Ushbu dastur asosan taqqoslanadigan (4 ta dars yo'q) va ikkalasi bilan taqqoslashni maqsad qilgan OpenStep API va undan keyingi versiyalar macOS qo'shimchalar. Yo'qotilgan sinflar Apple tomonidan ham tashlab qo'yilgan.[1]

Kokotron

Foundation to'plami amalga oshiriladi Kokotron, ochiq manbali kakao dasturi. Bu shuningdek Darlingning bir qismidir.

PureFoundation

PureFoundation bu fondni o'ramoq orqali amalga oshiradigan ochiq manbali dasturdir Asosiy fond, xuddi GNUstep va Cocotron kabi noldan alohida poydevor yaratish o'rniga, xuddi kakao singari.

SwiftFoundation

SwiftFoundation (swift-corelibs-foundation) - bu Apple-ning ochiq manbali manbasi Tez ob'ektiv-C ishlash vaqti bo'lmagan platformalar uchun Foundation API-ni amalga oshirish. Shuningdek, u amalga oshirishni o'z ichiga oladi Asosiy fond.[2]

ApportableFoundation

ApportableFoundation - bu Apple's CFLite versiyasi asosida Foundation Kit (Foundation, CoreFoundation va CFNetwork) dasturidir. U ishlaydi Android va boshqalar Linux tizimlari va Linux uchun Darling macOS tarjima qatlamining bir qismini tashkil qiladi.

Shuningdek qarang

Adabiyotlar

  1. ^ "OpenStep muvofiqligi". GNUstep (asos). Olingan 17 fevral 2020.
  2. ^ "swift-corelibs-foundation". GitHub.

Tashqi havolalar