Hvis du er kjent med objekt-orientert programmering, kan du hoppe over denne delen.
Objective-C-programmering er basert på konseptet av koden representerer virkelige objekter. Representasjoner av programmatiske objekter kan variere fra strenger (representasjon av tekst—en streng av tegn), etiketter, selv mennesker. I Objective-C, gjenstander er medlemmer av sine klasser. Et enkelt objekt, eller representasjon av en klasse, kalles en instans av klassen. Hver forekomst av en klasse, har egenskaper, ting som kjennetegner og karakteriserer det., I tillegg, hver forekomst har metoder, eller ting som det kan gjøre. Dette er alle ganske forvirrende for en nybegynner, så jeg skal forklare disse begrepene med en real-world eksempel—hvordan er det med folk.
Du og jeg er i hver en person. Vi har millioner av egenskaper som definerer oss, men vi er begge mennesker. Vi har øyne, ører, personligheter, smaker, et cetera. I tillegg, vi kan alle gjøre ting på. Vi kan uttrykke følelser, synge sanger, le…du får bildet. Så hvis vi skulle prege oss programmatisk, kunne vi si at vår klasse er Person., Våre egenskaper, som f.eks. øyenfarge, hårfarge og favoritt type bil, er egenskaper. Til slutt, våre evner, slik som snakker, ler og koding, er metoder.
Programmerere lage klasser for å administrere forholdet mellom hva datamaskinen gjør og hva de ønsker å oppnå i det virkelige liv. En utvikler kan lage en PickupTruck klasse for å representere en lastebil i sitt program., I programmet, kunne han oppretter en forekomst av PickupTruck, med egenskaper som farge, produksjon år og størrelse på seng. I tillegg, kan han gjøre bilen gjør ting, for eksempel stasjon, fylle drivstoff og tregere. Mulighetene er uendelige.
Klasse Hierarki og Arv
Objekt-orientert programmering kompliserer med ideer av klasse hierarki og arv. Klasse hierarkiet er forestillingen om at en klasse kan utlede sine egenskaper og metoder fra sin far eller mor, eller superclass, mens du blir i stand til å implementere nye egenskaper og metoder., Arv er bare et annet ord for klasse hierarki—en datter klasse som arver egenskaper og metoder fra sine overordnede klasse. For å forklare videre, jeg vil legge min pickup lastebil eksempel.
La oss starte med PickupTruck klasse. Det har grunnleggende trekk (kapasitet, produksjon år og størrelse på seng) og ferdigheter (stasjon, fylle drivstoff og tregere). Akkurat som å kalle et kjøretøy, en pickup lastebil i det virkelige liv er en generalisering, en forekomst av PickupTruck i vårt eksempel er ganske generelle, også.
la oss Nå legge til en datter klasse—FordPickupTruck., Det vil arve alle egenskapene til PickupTruck, som den har en farge, produksjon år og størrelse på seng. I tillegg arver metoder for PickupTruck—det kan stasjon, fylle drivstoff og tregere. Men siden FordPickupTruck er en mer spesifikk representasjon, det har flere egenskaper og metoder. En forekomst av FordPickupTruck vil ha en modell navn—et trekk for spesifikke for en generell PickupTruck. Vi kan også legge til en mulighet, la oss si en forekomst av FordPickupTruck kan slep, noe ikke alle PickupTrucks kan gjøre.,
En forelder klasse kan ha en ubegrenset mengde datter klasser, som i sin tur kan alle ha en ubegrenset mengde datter klasser og så videre. En klasse’ arv mønster kan være lineær, eller det kan grenen ut uendelig.,
Programmatisk, klasse hierarki og arv kan virke forvirrende. Men, hvis du gir dem reelle eksempler, de vil bli mye enklere, og dermed vil du være i bedre stand til å forstå dem. Dette gjelder for mange vanskelige begreper i informatikk.