Cocoa Er en utvikling API innfødt Til mac OS X-operativsystemet. Cocoa Touch er nært beslektet analog plattform for iOS. Den er skrevet I Objective-C, og fungerer som en slags «topplag» til hvert operativsystem.Kakao Kan betraktes som en applikasjonsplattform eller et applikasjonsutviklingsramme, men Det er mer integrert i operativsystemet enn noen av disse ville være I Et Linux-eller Windows-miljø.denne tette integrasjonen mellom API, operativsystemet Og (Selvfølgelig) Apples egen maskinvare er ment å gi et sømløst utviklingsmiljø og håndheve «Apple way» for å gjøre ting.
- Kakaohistorie
- Hva Gjør Kakao?
- Kakao som Standardbibliotek
- Kakao SOM EN UI / UX Grensesnitt
- Cocoa Som Operativsystemgrensesnitt
- Kakao som Arkitekt
- Kakao Ressurser
- Online
- Guider
- Verktøy
- Fellesskap og Fortsatt Læring
- Bøker
- ANDRE OS X Og iOS Utviklingsressurser
- Xcode
- Objective-C
- Swift
- Generelle Apple Utviklingsressurser
- Bunnlinje…
Kakaohistorie
Kakao starter Med C. Bokstavelig Talt.Tidlig på 1980-tallet forsøkte Et par utviklere Kalt Brad Cox Og Tom Love å legge Til Objektorientering Til Programmeringsspråket c, som ikke støttet OOP på DEN tiden.
deres løsning var å lage en pre-prosessor som ville gjengi C-kode med Noen Smalltalk-lignende tillegg til vanlig kompilerbar C-kode. (Smalltalk var et tidlig objektorientert språk.)
denne preprosessoren utviklet seg raskt til en fullverdig språkutvidelse og ble kjent Som Objective-C. NeXT software, som Ble grunnlagt av Steve Jobs etter At Han ble sparket Fra Apple i 1985, lisensierte Objective-C fra sine skapere og brukte Den som grunnlag for flere utviklingsrammer.
disse dannet Applikasjonsplattformene NeXTSTEP Og OpenStep, Som Neste solgte gjennom 80-og 90-tallet.
Apple kjøpte NeXT i 1996, Og Steve Jobs kom TILBAKE som ADMINISTRERENDE DIREKTØR. NeXTSTEP-rammene gjorde veien inn I Mac-operativsystemet.
Apple hadde allerede varemerkebeskyttet Navnet Cocoa, for et eget prosjekt som ble avviklet. For å raskt sette et varemerkebeskyttet merkenavn På Apples nyere versjon av rammene, kalte De Det Cocoa.Cocoa Har vært En del Av Alle Apples operativsystemer siden slutten Av 1990-tallet, og har utviklet seg sammen MED OPERATIVSYSTEMET og de nye enhetsplattformene siden da.
Hva Gjør Kakao?
Kakao gjør mange ting, men stort sett faller disse inn i fire kategorier:
-
Fungerer som et utvidet standardbibliotek For Objective-C, som gir støtte til rikere objekter og funksjoner i moderne dataspråk som ikke er tilstede I Utformingen Av Objective-C.
-
Gir et enhetlig brukergrensesnitt og brukeropplevelse.
-
Tillater et program å få tilgang til andre programmer, tjenester og enhetsfunksjoner.
-
Oppmuntre til spesielle arkitektoniske og datahåndteringsmønstre.
disse brede designmålene er implementert i flere » rammer.»Dette begrepet kan v re litt forvirrende . I moderne språkbruk Er Kakao mer som et enkelt rammeverk, med flere moduler eller biblioteker. Men Apple kaller hver av disse bibliotekene en » rammeverk.»
La oss utforske hvert av disse funksjonelle målene litt, og hvordan De ulike Cocoa-rammene oppnår dem.
Kakao som Standardbibliotek
Objective-C har et standardbibliotek. I Kakaomiljøet er standardbiblioteket og kjøretiden faktisk levert av Kakao. I Tillegg er Et sett med utvidede språkfunksjoner levert Av Foundation Kit som i praksis fungerer som et de facto standardbibliotek.
dette gir mer avanserte språkfunksjoner enn normalt tilgjengelig I Objective-C. Dette inkluderer et bredt spekter av grunnleggende klasser for vanlige typer objekter — tall, datoer, strenger, Nettadresser, regulære uttrykk og feilmeldinger.Dette Grunnlaget kit rammeverket er viktig i apps skrevet I Objective-C. men app utvikling I Apple plattformer beveger seg bort Fra Objective-C, Som Apple fremmer sin nyere Swift utvikling språk.Swift gir mange av De moderne språkfunksjonene Som Foundation Kit har lagt til, og Det er uklart hvilken rolle Foundation og Objective-C vil spille i En Swift-sentrisk fremtid.
Kakao SOM EN UI / UX Grensesnitt
dette aspektet Av Kakao er kanskje den mest åpenbart viktig for app utviklere.
I Os X-versjonen av Cocoa leveres user experience API av et rammeverk Kalt AppKit. I Cocoa Touch for iOS kalles Dette UIKit.
i begge tilfeller gir disse grafiske elementer, brukergrensesnittkontroller, vindus – og paneladministrasjon, multi-touch-grensesnitt og alle andre detaljer om samspillet mellom brukeren og systemet.Bruk Av AppKit og UIKit er det som gjør at et program ser ut og føles innfødt I Apple-systemet, og svarer på innganger (bevegelser, klikk, bevegelse) på «riktig» måte.den store forskjellen Mellom Cocoa Og Cocoa Touch er forskjellen Mellom AppKit og UIKit. Så Mye Som Apple har jobbet for å forene brukeropplevelsen på tvers av plattformer, samhandler Du fortsatt med en iPhone annerledes enn du gjør med en stasjonær Mac.Foruten litt forskjellige GUI-elementer, inkluderer UIKit støtte for ting som kompassretning, GPS, akselerometer (enhetsbevegelse) og berøringsskjerm.
Cocoa Som Operativsystemgrensesnitt
Apple-apper må også kunne samhandle med andre apper og operativsystemtjenester.
hvis du vil kunne klikke på et telefonnummer i chat-appen din og få det til å starte en telefonsamtale, må apper kunne snakke med hverandre.
hvis du vil at en musikkredigeringsapp skal kunne hente lyd fra en mikrofon og spille av til høyttalerne, må appene kunne samhandle med operativsystemtjenester.
Kakao gir en hel lang liste over rammer som gir tilgang til apper og tjenester. Dette gjør det mulig for apper å ikke bare være frittstående kjørbare, men å eksistere og operere i et integrert økosystem.
Kakao som Arkitekt
Kakao støtter to viktige arkitektoniske mønstre, en i en applikasjon og en i hvordan en applikasjon kommuniserer utenfor seg selv.Cocoa er skrevet med Model-View-Controller arkitektonisk paradigme i tankene, og støtter MVC utvikling på alle nivåer.
View er implementert Av AppKit eller UIKit rammer. Controller moduler støttes gjennom en familie av klasser bygget inn I Foundation Kit. Modeller, og deres nødvendige tilkobling til et datalag, håndteres av et annet rammeverk kalt Kjernedata.
denne utformingen oppfordrer (noen kan si håndhever) En Modell-View-Controller arkitektur innen iOS og OS X-programmer.
Mellom ulike applikasjoner, og også mellom applikasjoner og tjenester, formidler de ulike rammene samhandling på en hovedsakelig serviceorientert måte. Dette gjør det både enklere og sikrere å integrere apper med hverandre, noe som fremmer et robust, robust applikasjonsøkosystem.
Kakao Ressurser
Online
Guider
-
Grunnleggende Programmering Konsepter For Kakao Og Kakao Touch
-
Introduksjon Til Koding Retningslinjer For Kakao
-
Cocoa Dev Central
-
Programmering Mac OS X Med Kakao For Nybegynnere.
Verktøy
-
Kakao Kontroller: åpen kildekode ui komponenter for iOS OG OS X.
-
Kakao Pods: en pakke manager For Kakao prosjekter.
Fellesskap og Fortsatt Læring
-
CocoaHeads: et verdensomspennende nettverk av lokale møte-og diskusjonsgrupper dedikert Til Kakao Og Cocoa Touch utvikling.
-
Kakao Subreddit.
Bøker
-
Rask Utvikling Med Kakao: Utvikling For Mac Og iOS App Stores
-
Kakao Programmering FOR OS X: The Big Nerd Ranch Guide
-
Lære Kakao Med Objective-C
-
Ry Kakao Tutorial
-
Kakao (Utvikler referanse)
-
Kakao design mønstre.
ANDRE OS X Og iOS Utviklingsressurser
Du kan ikke bruke Cocoa Eller Cocoa Touch i et vakuum. Det er et stykke Av Det større Apple App utviklingsmiljøet, som inkluderer Xcode, Objective-C og Swift. Disse ulike verktøyene og teknologiene jobber sammen for å danne et utviklingsøkosystem.
Xcode
Xcode Er et nødvendig Integrert Utviklingsmiljø (IDE) for å bygge OS X og iOS-applikasjoner. Den er tett integrert Med Swift, Cocoa, Apple App store og det større apple-økosystemet.Det er ikke mange opplæringsprogrammer om Xcode spesifikt, da Det er dekket i alle Generelle Apple – utviklingsressurser. En stor ressurs er imidlertid Denne Xcode-Opplæringen, som oppdateres jevnlig når nye versjoner Av Xcode kommer ut.
Objective-C
-
Om Objective-C: en innledende tutorial fra Apple Developer center
-
Objective-C Programmering
-
Objective-C Programmering: The Big Nerd Ranch Guide.
Vi har også en mer komplett liste Over Objective – c ressurser.
Swift
-
Swift Programmeringsspråk: den offisielle apple guide
-
Swift Programmering: The Big Nerd Ranch Guide: den definitive bok om emnet.
Vi har også en grundig liste Over Swift-ressurser.
Generelle Apple Utviklingsressurser
Det første stedet for informasjon og ressurser om utvikling For Apple-plattformer er Apple Developer nettstedet.Mange av de beste bøkene På Mac og iOS-utvikling kommer fra Big Nerd Ranch. Deres bøker om bestemte emner er nevnt ovenfor, og du bør også sjekke ut sine bøker Om Avansert Mac OS X Programmering og iOS Programmering.Ray Wenderlich Tutorials: En av de relativt få leverandørene som går tilbake og oppdaterer gamle tutorials når Apple oppdaterer plattformen.
Apple Programmeringskanal På YouTube: ikke offisiell, men veldig nyttig.WeHeartSwift: nominelt om Swift, men dette nettstedet dekker ALLE aspekter AV OS X og iOS-utvikling.
NSHipster: en populær blogg Om Mac og iOS-utvikling, med mange opplæringsprogrammer på » oversett biter I Objective-C, Swift og Cocoa.»De er ogsa veldig sta i deres dekning, noe som sannsynligvis er en styrke .
ObjC.io: bøker og artikler om avanserte teknikker og praksiser for iOS-OG OS X-utvikling.
Bunnlinje…
Kakao Og Cocoa Touch er grunnlaget for native app utvikling For Mac og iOS.for iOS finnes det andre måter å bygge ikke-innfødte mobilapper med HTML5 og JS, men dette går ikke alltid så bra som forventet — egentlig.hvis du vil bygge den neste store iPhone-appen, eller lage Mac-apper som integrerer godt MED OS X og overholder brukerens forventninger, må du virkelig grave inn I Cocoa Og Cocoa Touch. For native app utvikling, er det egentlig ingen erstatninger.