Ladda ner presentationen
1
Objektorientering
2
Abstraktion Process som bygger på att känna igen och fokusera på viktiga karakteristika hos objekt eller i en situation. Förmågan att kunna filtrera bort eller bortse från oviktiga detaljer. Inte belasta informationsprocessande system, lägre kognitiv belastning (work load)
3
Kartor Topografisk, ekonomisk, klimatkarta, bilkarta, orienteringskarta,…. Verkligheten
4
Hus Drag - detaljer
5
Generalisering Vid en viss abstraktionsnivå får vi ett slags generiskt objekt Cell (cellkropp, nucleus, membran)
6
Klassifikation Taxonomi, perspektivberoende Trädstruktur
7
Klassifikation Träd kan uppdelas i t.ex. Lövträd och Barrträd
Lövträd kan delas upp i t.ex. Björk och Ek Björkar kan delas upp i t.ex. Glasbjörk, Vårtbjörk, Hängbjörk och Fjällbjörk
8
Klassifikation Vetenskaplig uppdelning i djur-, växt- och mineralrike
Djur – Levande, spontan rörelse, snabb motorisk reaktion på stimuli Växt – Levande, saknar nervsystem, cellulosa i cellväggar
9
Abstraktionshierarki
I sin helhet eller en del
10
Definition av fågel Har fjädrar Har vingar Lägger ägg Kan flyga
11
Kategorisering Rätt mängd regler Inte för generell Inte för restriktiv
Inga överflödiga saker
12
Kontext Abstraktion och kategorisering beror på situation
Olika lösningar beroende på detta
13
Reuse Precis som vi har återanvändning på låg nivå där vi återanvänder en stack eller en kö så kan vi ha detta på högre abstraktionsnivåer också. Algoritmer
14
Objekt Objekt är miniatyrabstraktioner av objekt i den riktiga världen. En definition: Något materiellt som kan uppfattas av våra sinnen. Något mentalt eller fysiskt som tankar, känslor och handlingar kan riktas mot.
15
Fysiska objekt, exempel
Studenter (ni) Lärare (jag) Stolar Bord Tamburmajor Rummet Huset
16
Konceptuella objekt TSB, den här kursen Institutionen för DV
KV-programmet Betyg
17
Mjukvaruobjekt ”Ett objekt är en mjukvarukonstruktion som sammanfogar data (tillstånd) och funktioner (beteende) vilket sammantaget representerar en abstraktion av ett fysiskt eller konceptuellt objekt från den riktiga världen.”
18
Data Student namn personnummer adress
vilka kurser studenten är inskriven på, har läst betyg
19
Data Kurs kurskod anmälningskod kursnamn förkunskapskrav lärare
20
Attribut Formellt kallas de data som används för att beskriva ett objekt för attribut (synonym till egenskap).
21
Tillstånd Ett objekts sammantagna attribut sägs beskriva objektets tillstånd.
22
Beteende En student kan: skriva in sig på en kurs hoppa av en kurs
välja en inriktning välja en handledare tala om vilka kurser han/hon läst
23
Beteende En kurs kan: tillåta en student att bli antagen
avgöra om en student är registrerad säga vilka förkunskapskrav som finns
24
Beteende är Ett objekts operationer (beteende) är vad det gör för att komma åt sina attribut och vad det gör för att modifiera och underhålla sina attribut.
25
Attribut - operationer
Vi kan se att attribut och operationer hänger ihop. Operationerna används för att kontrollera eller förändra attribut.
26
Operationer - Metoder I OOP används benämningen metoder. De är uppdelade i: konstruktor som skapar instanser selektor som returnerar information om objektets tillstånd mutator som ändrar objektets tillstånd iterator går igenom en kollektion av element, returnerar ett objekt och fortsätter med nästa övriga gör något
27
Metoder Skall bara tillhöra en kategori
28
Metoder Kan ses som en uppsättning tjänster som ett objekt tillhandahåller.
29
Klasser En klass är en abstraktion som beskriver gemensamma särdrag hos alla medlemmar i en grupp liknande objekt.
30
Klasser En klass definierar: datastrukturen (namn & typer av attribut)
operationer (metoder)
31
Student - attribut namn – String personnummer – int[] adress – String
inskrivningsdatum – Date antal poäng - int
32
Student - metoder registrera på kurs – registerForCourse
hoppa av kurs - dropCourse
33
Klass Definition av klassen kan ses som en mall för att skapa objekt.
Pepparkakor Shapes (exempel från Javaboken)
34
Instans Man instansierar objekt utifrån en klass. Instans = förekomst
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.