Hjem Sosiale medier Slik bruker du objektorientert design i iOS Apps - dummies

Slik bruker du objektorientert design i iOS Apps - dummies

Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024

Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024
Anonim

Objektorientert design i iOS er en annen måte å designe programmer på, hvor oppførelsen er knyttet til objekter. For å illustrere, vurder å undersøke handlingene som er involvert i å lage te og suppe. Men ikke umiddelbart hopp i handling i stedet, oppfør deg som en detektiv som går inn i en forbrytelsesscene. Gå tilbake, undersøk domenet (kjøkkenet), og prøv å forstå hva som er i det. Med andre ord, tenk objekter første .

  • Du ser en vannkoker. Du vurderer kjelen for en stund og så si: "Jeg kan legge vann til det; Jeg kan hælde vann fra det. "

  • Du ser på en tekanne. Som det ser tilbake, tenker du, "Jeg kan også legge til vann til dette og hente vann fra det, så vel som jeg kan med en vannkoker. "

Både vannkoker og tekanne ser ut til å kunne ta inn og hente ut vann. De har begge også staten (vannet holdes). Derfor generaliserer du at hvert av disse objektene er et fartøy. Du tenker også på egenskapene til disse objektene, det vil si deres egenskaper - for eksempel volum, farge og materiale.

Du tenker på de andre elementene på kjøkkenet, nemlig komfyren, kranen, koppene og boller, de forskjellige slags skjeer og matvarer: suppe, te og bouillon, selv kjøkkenklokken. Du tenker også på deres evner. Du prøver å generalisere typer objekter i høyere begreper, for eksempel fartøy.

I stedet for å tenke på en oppskrift bare som en rekke handlinger, skjønner du at en oppskrift også er et objekt. Tross alt kan du lage oppskrifter, rive opp oppskrifter og dele oppskrifter. En oppskrift er faktisk noe håndgripelig; Derfor er det et objekt, et objekt med evner. Når du følger en oppskrift, kan du forestille deg at du kjører den.

Så gjør du kjøre en mulighet for en oppskrift. Du lager også oppsett og rydder opp ansvar for et oppskriftobjekt. Har en oppskrift attributter? Hva med forfatteren hans (en streng )? Eller hvor mange tjener det (et heltall )? Endelig har oppskrifter klart et generaliseringshierarki med Making Tea og Making Soup som spesialiseringer av en generisk Oppskrift.

Tabellen nedenfor viser ulike typer objekter, deres evner, deres attributter og deres generaliseringer.

Type objekt Muligheter Attributter Generaliseringer
Fartøy Tilsett væske; Fyll ut væske Farge, farge, materiale
Tekanne Fartøyets egenskaper (det vil si Legg til og helling) Fartøyets egenskaper Fartøy
Tureen Alle kapasitetene til et fartøy Attributtene til et fartøy Fartøy
Vannkoker Alle kapasitetene til et fartøy; Kok En fartøys attributter Fartøy
Cup Alle kapasitetene til et fartøy; Drikk fra Attributtene til et fartøy Fartøy; Du kan drikke fra
Bowl Alle mulighetene til et fartøy; Spis med skje Attributtene til et fartøy Fartøy; Du kan konsumere væsker det holder, med en skje
Komfyr Sett et fartøy på; Slå på; Skru av; Angi nivå Farge
Kran Åpne; Lukk Farge
Te Bratt Type Matvare
Bouillon Bratt Smaken Matvare
Klokke Vent
Oppskrift Sett opp; Løpe; Rengjør Vanskelighetsgrad; skaperen; Antall personer som serveres
Gjør te Oppskriftens ansvar Attributter til en oppskrift; Antall kopper Oppskrift
Gjør suppe Ansvar for en oppskrift Attributter til en oppskrift; Antall skåler Oppskrift

En oppføring som Alle mulighetene av et fartøy for Cup-objektet betyr at en Cup forstås automatisk å ha tilleggsvæsken og hente ut evner fordi det er et fartøy.I tillegg har en kopp drikke fra evnen. Med andre ord kan du gjøre mer med en kopp enn du kan med en vanlig gammel fartøy.

For å si det i OO-terminologi, er et fartøy en generalisering av en kopp, mens en kopp er en spesialisering på et fartøy.

Objektorientert MakeTea Oppskrift

@interface TeaRecipe: Oppskrift // Gjøre te er en slags oppskrift @ implementering TeaRecipe + Setup; {…} // Setter opp oppskriften + Kjør: (int) NumberOfCups; {// dette er en instansmetode NSArray * TeaCups; // Deklar en rekke kopper [Kran åpen] [Kettle AddLiquid: (NumberOfCups * CUPVOLUME)]; [Komfyr PutVesselOn: Kettle]; [Stove TurnOn]; For (i = 1; i <= numberOfCups; i ++) {[TeaPot Legg til: Tea Quantity: @ "1 skje"];} Mens (! [Kettle IsBoiling]); // Fortsett å løse til vannet koker [Kettle PourWaterFrom: Tekanne]; [Klokke vent: @ "5 minutter"]; For (i = 1; i <= numberOfCups; i ++) [Kettle Pour: [TeaCups objectAtIndex: i]]; NSLog ("Enjoy Tea");} // End MakeTea + Opprydding; {…} // rydder opp etter oppskriften -d

Du lager to kopper te med dette programmet:

MakeTea teaRecipeInstance = [[TeaRecipe allokering]; [teRecipeInstance Setup]; [teRecipeInstance Run: 2]; [teRecipeInstance Cleanup];
Slik bruker du objektorientert design i iOS Apps - dummies

Redaktørens valg

10 Måter å varme opp og slappe av før og under GRE-dummies

10 Måter å varme opp og slappe av før og under GRE-dummies

GRE er like mye fysisk trening som det er mentalt, og det er mer som en maraton enn en sprint. Hvis du kommer ut av blokkene med en sprintens tempo, er du sikker på å raskt eksosere deg selv. Nøklene til å komme til enden og fullføre sterken, oppvarmer seg mentalt og holder seg i orden ...

Argument analyse på GRE - strategier og praksis spørsmål - dummies

Argument analyse på GRE - strategier og praksis spørsmål - dummies

Når du takler et argument Analysespørsmål på GRE, din jobb er å identifisere om forfatteren har gjort en tilstrekkelig jobb med å presentere og støtte sin stilling. Graduate skoler forventer at du ikke bare skal lese med forståelse, men også å undersøke informasjonen og argumentet som presenteres og sortere logikken som er rimelig fra ...

Argument analyse på GRE Verbal Essay Test - praksis spørsmål - dummies

Argument analyse på GRE Verbal Essay Test - praksis spørsmål - dummies

Når du tar GRE Verbal testen, et av essay spørsmålene vil be deg om å analysere et argument. Du må lese argumentet, se på sine underliggende forutsetninger, og deretter forklare hvordan disse forutsetningene påvirker argumentet. Følgende praksis spørsmål ligner på hva du finner på testen. Øvelsesspørsmål Tid: ...

Redaktørens valg

Oversikt over sikkerhetspolitikk for mobilenheter - dummier

Oversikt over sikkerhetspolitikk for mobilenheter - dummier

Sikkerhetspolitikk for mobile enheter som knytter seg til bedriftsnettverket kan deles inn i to kategorier: retningslinjer for godkjente enheter og retningslinjer for andre enheter. Enhetspolicyer. Her er en oversikt over de to kategoriene av enhetsretningslinjer som du må kommunisere med brukere: Politikk for godkjente enheter: Denne policyen gjelder for alle bedriftsutstedte ...

Oversikt over mobilenhetssikkerhet gjennom skybaserte beskyttelser - dummies

Oversikt over mobilenhetssikkerhet gjennom skybaserte beskyttelser - dummies

Ved hjelp av skybasert endpoint-sikkerhet er en metode for å beskytte enterprise mobile enheter fra virus, malware, spam og andre trusler. Den faktiske trusselsbeskyttelsen skjer i skyen eller sentralisert datasenter for sluttpunktsprogramvareleverandøren i denne typen distribusjon. Trafikk til og fra de mobile enhetene blir omdirigert på enheten til ...

Oversikt over mobilenhetssikkerhet gjennom enhetsadministrasjon - dummies

Oversikt over mobilenhetssikkerhet gjennom enhetsadministrasjon - dummies

Nå som du har tenkt på å sikre mobilen enheter på nettverket ditt fra trusler som virus og malware, er det på tide å planlegge for ekstern håndheving av retningslinjer for enhetsadministrasjon eller sikkerhet. Du får ideen. Det handler om enhetssikkerhetsetikett, om å ta de enkle, men ofte ignorerte trinnene for å beskytte vitale data lagret på ...

Redaktørens valg

Hånd- og håndleddskader grunnleggende for legeassistenteksamen - dummies

Hånd- og håndleddskader grunnleggende for legeassistenteksamen - dummies

Legeassistenteksamen PANCE) vil stille spørsmål om forhold som påvirker hånden og håndleddet. De spenner fra godartede cyster til mindre forstuinger til utbruddssvikt, så gjør deg kjent med det grunnleggende. Ganglioncyster En vanlig myk vævsmasse som du kan se på hendene og håndleddene, er en ganglioncyst, også kjent ...

HIV Grunnleggende for legeassistenteksamen - dummies

HIV Grunnleggende for legeassistenteksamen - dummies

For legeassistenteksamen (PANCE), bør du være kjent med noen generelle ting som angår HIV, spesifikke infeksjoner relatert til HIV, og bivirkninger av visse medisiner. HIV står for humant immundefektvirus. Risikofaktorer for å skaffe hiv inkluderer høyrisiko seksuell atferd og narkotikamisbruk, spesielt intravenøs bruk med skitne nåler. Kommer i kontakt med ...

Mageområdet for legeassistenteksamen - dummies

Mageområdet for legeassistenteksamen - dummies

Etter å ha reist gjennom spiserøret, din neste destinasjon i forberedelsene til legeassistenteksamen (PANCE) er det livlige magesektoren. Inneholder cardia, fundus, antrum og pylorus, er dette området bare moden for patologi og fremtidige PANCE-spørsmål. Magen er et sted hvor mye av fordøyelsen finner sted. Hovedcellene ...