Maybaygiare.org

Blog Network

Cocoa and Cocoa Touch: Sådan kommer du i gang Byg Mac-og iOS-Apps

Disclosure: din support hjælper med at holde siden kørende! Vi tjener et henvisningsgebyr for nogle af de tjenester, vi anbefaler på denne side. Læs mere

Cocoa er en udvikling API indfødte til Mac OS operativsystem. Cocoa Touch er den nært beslægtede analoge platform til iOS. Det er skrevet i Objective-C, og fungerer som en slags “øverste lag” til hvert operativsystem.Cocoa kan betragtes som en applikationsplatform eller en applikationsudviklingsramme, men den er mere integreret i operativsystemet, end nogen af disse ville være i et miljø.

denne tætte integration mellem API ‘ en, operativsystemet og (selvfølgelig) Apples eget udstyr er beregnet til at give et problemfrit udviklingsmiljø og håndhæve “Apple-måden” at gøre ting på.

historie af kakao

kakao starter med C. bogstaveligt talt.i begyndelsen af 1980 ‘ erne forsøgte et par udviklere ved navn Brad og Tom Love at tilføje objektorientering til C-programmeringssproget, som ikke understøttede OOP på det tidspunkt.deres løsning var at oprette en forprocessor, der ville gengive C-kode med nogle Smalltalk-lignende tilføjelser til almindelig kompilerbar C-kode. (Smalltalk var et tidligt objektorienteret sprog.)

denne præprocessor udviklede sig hurtigt til en fuldblæst sprogudvidelse og blev kendt som Objective-C. Steve Jobs blev grundlagt efter at han blev fyret fra Apple i 1985, licenserede Objective-C fra sine skabere og brugte det som grundlag for flere udviklingsrammer.

disse dannede den Næstetrin og OPENSTEP applikationsplatforme, som næste solgt gennem 80 ‘erne og 90’ erne.

Apple erhvervet næste i 1996, og Steve Jobs vendte tilbage som CEO. De næste trin rammer gjorde deres vej ind i Mac-operativsystemet.

Apple havde allerede varemærket navnet Cocoa til et separat projekt, der blev afbrudt. For hurtigt at sætte et varemærkebeskyttet mærke på Apples nyere version af rammerne kaldte de det Cocoa.

Cocoa har været en del af alle Apples operativsystemer siden slutningen af 1990 ‘ erne og har udviklet sig sammen med operativsystemet og de nye enhedsplatforme siden da.

Hvad gør kakao?

Cocoa gør mange ting, men stort set falder disse i fire kategorier:

  • fungerer som et udvidet standardbibliotek for Objective-C, der yder støtte til rigere objekter og funktioner i moderne computersprog, der ikke er til stede i designet af Objective-C.

  • giver en samlet brugergrænseflade og brugeroplevelse.

  • giver et program adgang til andre programmer, tjenester og enhedsfunktioner.

  • fremme af særlige arkitektoniske og datastyringsmønstre.

disse brede designmål implementeres i flere “rammer.”Dette udtryk kan være lidt forvirrende. I moderne sprogbrug er kakao mere som en enkelt ramme med flere moduler eller biblioteker. Men Apple kalder hvert af disse biblioteker en “ramme.”

lad os undersøge hvert af disse funktionelle mål lidt, og hvordan de forskellige Kakaorammer opnår dem.

kakao som standardbibliotek

Objective-C har et standardbibliotek. I Kakaomiljøet leveres standardbiblioteket og runtime faktisk af kakao. Derudover leveres et sæt udvidede sprogfunktioner af Foundation Kit, som i praksis fungerer som et de facto standardbibliotek.

dette giver mere avancerede sprogfunktioner, end det normalt ville være tilgængeligt i Objective-C. Dette inkluderer en bred vifte af grundlæggende klasser for almindeligt anvendte typer objekter — tal, datoer, strenge, URL ‘ er, regulære udtryk og fejlmeddelelser.

denne Foundation Kit-ramme er vigtig i apps skrevet i Objective-C. appudvikling i Apple-platforme bevæger sig imidlertid væk fra Objective-C, da Apple fremmer sit nyere hurtige udviklingssprog.

Hurtig giver mange af de moderne sprogfunktioner tilføjet af Foundation Kit, og det er uklart, hvilken rolle Foundation og Objective-C vil spille i en hurtig centreret fremtid.

Cocoa som en brugergrænseflade

dette aspekt af Cocoa er måske det mest åbenlyse vigtigt for appudviklere.

i OS-versionen af Cocoa leveres brugeroplevelsen API af en ramme kaldet AppKit. I Cocoa Touch til iOS kaldes dette UIKit.

i begge tilfælde giver disse grafiske elementer, brugergrænsefladekontroller, vindue-og panelstyring, multi-touch-grænseflader og alle de andre detaljer om interaktion mellem brugeren og systemet.

brug af AppKit og UIKit er det, der får en applikation til at se og føle sig indfødt i Apple-systemet og reagere på input (bevægelser, klik, bevægelse) på den “rigtige” måde.

den store forskel mellem Cocoa og Cocoa Touch er forskellen mellem AppKit og UIKit. Så meget som Apple har arbejdet for at forene brugeroplevelsen på tværs af platforme, interagerer du stadig med en iPhone anderledes end du gør med en stationær Mac.

udover lidt forskellige GUI elementer, UIKit omfatter støtte til ting som kompas retning, GPS, accelerometer (enhed bevægelse), og touch screen.

Cocoa som Operativsystemgrænseflade

Apple-apps skal også være i stand til at interagere med andre apps og operativsystemtjenester.

Hvis du vil være i stand til at klikke på et telefonnummer i din chat-app og få det til at starte et telefonopkald, skal apps være i stand til at tale med hinanden.

Hvis du vil have en musikredigeringsapp til at kunne hente lyd fra en mikrofon og afspille til dine højttalere, skal apps være i stand til at interagere med operativsystemtjenester.

Cocoa giver en hel lang liste over rammer, der giver adgang til apps og tjenester. Dette gør det muligt for apps ikke kun at være enkeltstående eksekverbare, men at eksistere og fungere i et integreret økosystem.

Cocoa as Architect

Cocoa understøtter to vigtige arkitektoniske mønstre, en inden for en applikation og en i, hvordan en applikation kommunikerer uden for sig selv.

Cocoa er skrevet med Model-Vis-Controller arkitektoniske paradigme i tankerne, og understøtter MVC udvikling på alle niveauer.

visning er implementeret af AppKit eller UIKit rammer. Controller moduler understøttes gennem en familie af klasser indbygget i fundamentet Kit. Modeller og deres nødvendige forbindelse til et data persistenslag håndteres af en anden ramme kaldet kernedata.

dette design tilskynder (nogle vil måske sige håndhæver) en model-visning-Controller arkitektur i iOS og OS applikationer.

mellem forskellige applikationer og også mellem applikationer og tjenester formidler de forskellige rammer interaktion på en i det væsentlige serviceorienteret måde. Dette gør det både lettere og sikrere at integrere apps med hinanden og fremme et robust, elastisk applikationsøkosystem.

Cocoa Resources

online

Tutorials

  • grundlæggende programmeringskoncepter til kakao og kakao Touch

  • Introduktion til Kodningsretningslinjer for Kakao

  • Cocoa Dev Central

  • programmering Mac OS med kakao til begyndere.

værktøjer

  • Cocoa Controls: open source UI komponenter til iOS og OS.

samfund og fortsat læring

  • CocoaHeads: et verdensomspændende netværk af lokale møde-og diskussionsgrupper dedikeret til udvikling af kakao og kakao.

  • kakao Subreddit.

bøger

  • hurtig udvikling med kakao: udvikling til Mac-og iOS-appbutikkerne

  • kakao programmering til OS: Den Store Nørd Ranch Guide

  • læring kakao med Mål-C

  • Ry ‘ s Cocoa Tutorial

  • Cocoa (Cocoa) udvikler reference)

  • Cocoa design mønstre.

andre OS-og iOS-udviklingsressourcer

Du kan ikke bruge Cocoa eller Cocoa Touch i et vakuum. Det er et stykke af det større Apple-appudviklingsmiljø, der inkluderer kode, Objective-C og hurtig. Disse forskellige værktøjer og teknologier arbejder sammen om at danne et udviklingsøkosystem.

kode

kode er et nødvendigt integreret udviklingsmiljø (IDE) til opbygning af OS-og iOS-applikationer. Det er tæt integreret med hurtig, kakao, Apple App store og det større Apple-økosystem.

der er ikke mange vejledninger om kode specifikt, da det er dækket af alle generelle Apple-udviklingsressourcer. En stor ressource, selvom, er denne kode Tutorial, som regelmæssigt opdateres som nye versioner af kode kommer ud.

Objective-C

  • om Objective-C: en indledende tutorial fra Apple Developer center

  • Objective-C Programmering

  • Objective-C Programmering: The Big Nerd Ranch Guide.

Vi har også en mere komplet liste over Objective-C ressourcer.

hurtig

  • det hurtige programmeringssprog: den officielle Apple-guide

  • Hurtig programmering: The Big Nerd Ranch Guide: den endelige bog om emnet.

Vi har også en grundig liste over hurtige ressourcer.

generelle Apple-udviklingsressourcer

det første sted for information og ressourcer om udvikling til Apple-platforme er Apple Developer site.

mange af de bedste bøger om Mac og iOS udvikling kommer fra Big Nerd Ranch. Deres bøger om specifikke emner er nævnt ovenfor, og du bør også tjekke deres bøger om Avanceret Mac OS programmering og iOS programmering.

andre gode generelle ressourcer:

  • en af de relativt få udbydere, der går tilbage og opdaterer gamle tutorials, når Apple opdaterer platformen.

  • Apple Programmeringskanal på YouTube: ikke officiel, men meget hjælpsom.

  • Vi arbejder med alle aspekter af os og iOS udvikling.

  • NSHipster: en populær blog om Mac og iOS udvikling, med en masse tutorials på “overset bits i Objective-C, hurtig, og kakao.”De er også meget meningsfulde i deres dækning, hvilket sandsynligvis er en styrke.

  • ObjC.io bøger og artikler om avancerede teknikker og praksisser til udvikling af iOS og OS.

bundlinje…

kakao og kakao Touch er grundlaget for native app udvikling til Mac og iOS.

til iOS er der andre måder at opbygge ikke-indfødte mobilapps med HTML5 og JS, men det går ikke altid så godt som forventet — virkelig.

Hvis du vil bygge den næste store iPhone-app eller oprette Mac-apps, der integrerer godt med OS og overholder brugernes forventninger, skal du virkelig grave i Cocoa and Cocoa Touch. Til native app-udvikling er der virkelig ingen erstatninger.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.