Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
22 Cards in this Set
- Front
- Back
3 stegs prosess til resultat
|
1. OO Analysering (forstå problemet)
2. OO Design (Lage en plan) 3. OO Programming (Bygge) |
|
Hvorfor så mange ulike utviklingssystemer som XT, Scrum osv.?
|
* Ulike mål
* Quiz qpp vs bank systemer * Formelle / uformelle * Hvor mange møter/personer.. |
|
Hvorfor fungerer ikke fossefallsmetoden?
|
* Problemer oppstaår som du ikke antisiperte i begynnelsen.
* Kunden endrer mening osv. |
|
Hva er en agile eller iterativ metode?
|
* Responsive på vegne av endringer
* Går syklisk igjennom de samme stegene. |
|
Får man en perfekt analyse og design med en agile prosess?
|
* Nei, det forventes at den eller de første interativene er feil eller mangelfulle
* Færre begymringer. * Ikke ment til å være perfekt.. |
|
Hva kjennetegner prosedyre koding?
|
* Kode på en eller få plasser.
* Variabler definert på en plass. |
|
Hva er utfordringen med prosedyre koding?
|
* Vanskelig å planlegge.
* Blir fort veldig kompleks. * Vanskelig å vedlikeholde. |
|
Hvorfor ble OO programmering utviklet?
|
* For å kunne tenke på kode på samme måte som vi tenker på vår verden.
* Person. * Skole. * Jobb osv. |
|
Hva er tre som kjennetegner et objekt?
|
* Separat
* Har egenskaper (attributter). * Er substantiver |
|
Hva er klassetypen?
|
* Navnet
|
|
Hva kalles det når et objekt blir laget?
|
* Object instantiation
* (instansiering) |
|
Har programmeringsspråk standariserte klasser?
|
* Ja, mange som regler
* String, dato, tabeller osv. * Java - 4000 klasser |
|
Hva er 4 essensielle konsepter i forhold til klasser?
|
A-PIE * Abstraksjon* Polymorphism * Inheritance * Encapsulation |
|
Hva kjennetegner abstraksjon?
|
* Overordnet ide
* Et bord * Ikke spesifikk type/størrelse * Håndtere komplikasjon * Bolle med frukt. * Ignorere detaljer * Separat fra instanser |
|
Hva kjennetegner encapsulation
|
* Data-hiding
* Minske avhengigheter på hvordan objektet er koded * Public metoder * (Gjemme så mye som mulig) |
|
Hva kjennetegner polymorphism?
|
"Mange former" * + tegnet, matte (addere) og string (konkatenere)* Spare konto, bsu konto, regningskonto * Ta ut penger metode * Overriding method i superklassen * De fleste klasser trenger det ikke |
|
5 grunnlegende steg til å utvikle et program
|
1. Identifisere krav
2. Beskriv applikasjonen 3. Indentifisere hovedobjekter 4. Beskriv interaksjonen mellom dem 5. Lag et klassediagram Gjøres helst bare på papir, indekskort osv. Stegene besøkes flere ganger i praksis.. |
|
1: Identifisere krav (Analyse)
|
* Hva skal apolikasjonen gjøre
* Hvilket problem skal løses * Vær spesifikk og SKRIV DET NED * Hva den SKAL gjøre og ikke hva den KAN gjøre * Vanlig for soloutviklere å være lite spesifikk |
|
2: Beskrive applikasjonen
|
* Bruke enkelt forklarende språk om hvordan brukerene skal bruke applikasjonen
* Use case diagram * Use case historier * Utgangspunkt som kan endres * Helt OK! * Av og til OK til å lage mockup av applikajonen * Kan være distraherende også |
|
3: Identifisere de viktigste objektene.
|
* Hva er de viktigste "tingene"?
* The THE |
|
4: Beskrive interaksjonen mellom objektene
|
* "En KUNDE trenger å åpne en BANKKONTO"
* Et ROMSKIP må eksplordere hvis det treffer en ASTEORIDE. * Sequence diagram... |
|
5: Lage et klassediagram
|
* Målet med prosessen.
* Visuell representasjon av klassene * Inheritance * Polyphormism |