Objective C er en avlegger av programmeringsspråket C , utviklet i 1970 som en av de første høyere nivå systemer programmeringsspråk. Objective C inkorporerer syntaksen til C med objektorienterte egenskapene til Smalltalk . Apple har integrert sitt utviklingsmiljø , Cocoa, med Objective C for programmering på Mac-operativsystemet. Objective C er nyttig for Apple utviklere , men det mister noe av sin sjarm hvis en søknad må være på tvers av platformed med et annet operativsystem . Videre gjør Objective C ikke støtte " navnerom "-funksjonen i C + + (en annen avlegger av C) som hjelper avtale med flere tredjeparts kode biblioteker og moduler . Development Language for populære plattformer
En fordel med Objective C er at det er hovedspråket som brukes til å utvikle programmer for Apple-produkter . Objective C er programmeringsspråket utviklet spesielt for å arbeide med Cocoa programmering rammeverk, noe som betyr at den har tilgang til Apples utvikling bibliotekene . Lage applikasjoner for alle Apple-produkt , for eksempel iPod , iPad eller OS X-systemer , krever noe kunnskap om Objective C.
Objective C Runtime
C og C + + er " kompilert " programmeringsspråk , noe som betyr at kildekoden skrevet av programmerer er oversatt til maskin språk , og skaper en kjørbar fil som kjører på en brukers operativsystem . Kompilerte språk er begrenset i hvordan de fungerer : Mange avgjørelser som involverer hukommelse tildeling og objekt etableringen skje i kompilering tid, ikke mens programmet kjører (kjøring) . Et program skrevet i Objective C er mer dynamisk , i stand til å samle informasjon om seg selv til å ta avgjørelser angående minne eller data typer, snarere enn å ha hatt vedtak fattet under koding tid .
Navneområder
En ulempe med programmering i Objective C er at den ikke inneholder navnerom. På andre språk , spesielt C + + , navnerom inneholder funksjonalitet definert av et navn. Funksjoner i et namespace eksisterer bare i omfanget av dette navnerommet , noe som betyr at en annen funksjon med en identisk navn i en annen namespace kan brukes av programmerer uten å endre navn. Dette lar programmerere å importere en rekke biblioteker og ikke bekymre seg unødvendig om funksjon navn motstridende . I Objective C , kan importere to bibliotek med samme funksjon navn forårsake en feil hvis programmereren er ikke er forsiktig , fordi kompilatoren har ingen måte å vite hvilken funksjon å faktisk ringe.
Portability
en annen ulempe av Objective C er at det er veldig avhengig av Cocoa-rammeverket for funksjonaliteten. Selv om dette er en fordel for Apple -utviklere , vil Windows-utviklere ikke finner den samme suksessen skrive Windows-programmer i Objective C. Snarere fokuserer Windows utvikling på . NET bibliotekene , knyttet til Visual C + + , C # eller VB.NET programmeringsspråk. Apple utviklere trenger ikke bekymre deg for dette nedsiden, med mindre de er ute etter kryssplattform portabilitet .