Set de aplicații - Application Kit
Setul de aplicații , denumit de obicei AppKit , este un set de instrumente grafic pentru interfața utilizatorului de la NeXTSTEP . Împreună cu Foundation și Display PostScript , este una dintre părțile de bază ale specificației OpenStep a API-urilor. AppKit și Foundation au fost moștenite în Cocoa , cadrul API Objective-C al macOS . GNUstep , implementarea de către GNU a OpenStep / Cocoa API, conține și un AppKit.
AppKit cuprinde o colecție de clase și protocoale Objective-C care pot fi utilizate pentru a construi o aplicație în OpenStep / Cocoa. Aceste clase pot fi folosite și în Swift prin intermediul podului Objective-C. Xcode are funcționalitate încorporată pentru dezvoltarea unei aplicații Cocoa folosind AppKit, inclusiv posibilitatea de a proiecta vizual interfețe utilizator cu Interface Builder . Se bazează foarte mult pe tipare precum tipuri de referință , delegare , notificări , țintă-acțiune și model-vizualizare-controler . Un semn al patrimoniului NeXTSTEP, clasele și protocoalele AppKit încă folosesc prefixul „NS”.
Majoritatea aplicațiilor incluse în macOS - de exemplu, Finder , TextEdit , Calendar și Preview - utilizează AppKit pentru a le furniza interfața cu utilizatorul.
macOS , iOS , iPadOS și tvOS acceptă, de asemenea, alte cadre UI, inclusiv UIKit , care este derivat din AppKit și folosește multe structuri similare, și SwiftUI , un cadru UI Swift - numai declarativ.
Înainte de macOS Catalina , macOS suporta, de asemenea , Carbon , un cadru UI derivat din Macintosh Toolbox .
Clase
Dintre cele peste 170 de clase incluse în setul de aplicații, următoarele clase formează nucleul:
-
NSApplication: un obiect singleton care reprezintă aplicația ca întreg și își urmărește ferestrele și alte stări globale -
NSWindow: un obiect care reprezintă o fereastră pe ecran, deține o ierarhie de vizualizări -
NSView: un obiect reprezentând o regiune dreptunghiulară; poate desena propriul conținut de interfață (folosind motoare de desen precum Quartz , Core Animation și Metal ) și poate deține, de asemenea, un subarborod de alte vizualizări -
NSResponder: un obiect care poate răspunde la evenimente din timpul vieții aplicației;NSApplication,,NSWindowșiNSViewsunt toate subclasele dinNSResponder -
NSDocument: un obiect care reprezintă un document salvat pe disc care gestionează afișarea acestuia într-o fereastră -
NSController: o clasă abstractă care implementează unele funcționalități pentru un controler , care mediază între vizualizări și obiecte model