Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Objektorientert programmering Objektorientert systemutvikling

Liknende presentasjoner


Presentasjon om: "Objektorientert programmering Objektorientert systemutvikling"— Utskrift av presentasjonen:

1 Objektorientert programmering Objektorientert systemutvikling
Kompetansemål under hovedområde programmering: Eleven skal kunne gjøre rede for hensikten med objektorientert utvikling og begrepene klasse, objekt og arv IT-2 Objektorientering

2 Bakgrunn og hensikt Oppfunnet i Norge på 1960-tallet av Kristen Nygård og Ole-Jacob Dahl. Utviklet det første objektorienterte programmerings-språket Simula, der alle de sentrale begrepene er med Hensikten er å mestre store og kompliserte programmeringsoppgaver ved en hensiktsmessig oppdeling Tidligere var strukturert programmering utviklet, med oppdeling i blant annet funksjoner Men, objektorientering tar dette langt videre Fra prosedyreorientering til objektorientering IT-2 Objektorientering 2

3 Begreper - klasse Klasse – vanskelig å forklare kort og klart.
En klasse samler informasjon/egenskaper og handlinger/ metoder/ som gjelder et tema, en ting. Kan sees på som definisjon av en datatype. Klasser kan gjelde programmeringmessige greier som String og Array i ActionScript eller konkrete ting fra virkeligheten som Geit, Hund, Bil, eller mer abstrakte saker som Dato og Bankkonto. Det å finne gode klasser for problemet som skal løses er en sentral del av design-arbeidet IT-2 Objektorientering 3

4 Begreper - objekt Objekt – er en forekomst, instans av en klasse. For eksempel hunden Rex et objekt av klassen Hund. Fra en klasse kan det lages mange objekter, klassen er oppskriften på å lage disse objektene Et objekt lages i ActionScript med nøkkelordet new var tabell:Array = new Array(); var minHund:Hund = new Hund(”Rex”); IT-2 Objektorientering 4

5 Begreper - arv En klasse kan arve egenskaper og metoder fra en overordnet klasse kalles da subklasse og superklasse Eksempler: Klassen Dyr som superklasse til Hund og Geit Klassen Kjøretøy som superklasse til Bil og Traktør Superklassen vil innehold egenskaper og metoder som er felles ActionScript: public class Hund extends Dyr public class FyltSirkel extends FyltFigur IT-2 Objektorientering 5

6 var h1:Hund = new Hund(”Lassie”); h1.settFødeår = 2005; class Hund
//egenskaper var navn:String var rase:String var farge:String var født:int var løpetid:Boolean //kunstruktør function Hund (navnet:String){ navn = navnet } //andre metoder function SettFødeår(år:int){ født = år function bjeff() { Lassie 2005 h1 var h2:Hund = new Hund(”Rex”); h2.settFødeår = 1997; Rex 1997 h2 var h3:Hund = h2; h3 IT-2 Objektorientering

7 private: egenskapene er ikke tilgjengelige utenfor
klassen, dette gir innkapsling public: er tilgjengelig utenfor klassen, danner til sammen sammen grensesnittet for klassen, det omgivelsene kan se og gjøre med objektene i klassen IT-2 Objektorientering

8 Innkapsling Modularisering Lassie 2005 Collie Gylden Ja Tilgang til
hundeobjektets indre gjennom public-metodene Alt om hunder, både egenskaper og handlinger (metoder) er samlet i klassen Hund, som hunde- objektene lages fra settFarge() Lassie 2005 Collie Gylden Ja visInfo() bjeff() settNavn() Verdiene som egenskapene har akkurat nå kalles tilstanden til hundeobjektet settRase() settLøpetid() visRase() IT-2 Objektorientering

9 Fordelene med objektorientering
Mestring av komplekse programmeringsoppgaver som krever brede kunnskaper og teamsamarbeid modularisering fornuftig oppdeling, effektiv arbeidsdeling abstraksjon når en klasse først er programmert og testet, kan den trygt brukes av andre uten å bry seg om og skjønne bæret av hvordan den er laget; gjelder også når vi benytter ferdige klasser som Math og Array innkapsling trygghet, kontroll, arv IT-2 Objektorientering 9


Laste ned ppt "Objektorientert programmering Objektorientert systemutvikling"

Liknende presentasjoner


Annonser fra Google