Hei, og velkommen til gruppe 5 :))
Her vil jeg legge ut foiler og løsningsforslag som blir gått igjennom i timen.
Vi har lab på torsdager 14:15-16:00 og seminartimer på mandag 12:15-14:00.
Jeg kommer til å bruke mattermost kanalen til gruppen for å gi ut beskjeder (så ta en titt innom der en gang i blant)
Gleder meg masse til et semester med dere !! :)
Marlen
Kontant meg
Uke 1
Læringsmål:
- Kunne logge på en linux-tjener ved Ifi fra egen maskin, skrive, endre og kjøre et Python-program
- Programmering i Python:
- Kunne skrive ut til og lese inn fra terminalen
- Kunne ta vare på verdier med variabler
- Kunne bruke beslutninger (if) for å avgjøre hvilke programlinjer som skal kjøres
- Kunne lese en feilmelding
- Kjenne til ulike verktøy for å skrive og kjøre Python-programmer
Foiler:
Oppgavene ligger i Seminar foilene
Løsningsforslag
Oppgave 1 | Oppgave 2 | Oppgave 3 | Oppgave 4 | Oppgave 5 | Oppgave 6 | Oppgave 7 | Oppgave 8a | Oppgave 8b
Uke 2
Læringsmål:
- Forstå hvordan én enkelt linje utføres: Datatyper, evaluering av uttrykk og funksjoner
- Ha god forståelse av variabler
- Forstå og kunne bruke enkle prosedyrer uten parametre
- Forstå hvordan et helt program utføres - kodeflyt fra linje til linje, inkludert for beslutninger og prosedyrer
Løsningsforslag (Oppgavene er i foilene):
Oppgave 1 | Oppgave 2 | Oppgave 3 | Oppgave 4 | Oppgave 5
Uke 3
Læringsmål:
- Vite om begrepet objekter, samt at objekter tilbyr tjenester
- Kunne bruke samlinger for å holde på mange verdier
- Kjenne til forskjellene mellom lister, mengder og ordbøker, samt være i stand til å benytte egnet type samling for et gitt formål
Løsningsforslag (oppgavene er i foilene):
Oppgave 1 | Oppgave 2 | Oppgave 3 | Oppgave 5 | Oppgave 6
Uke 4
Uke 5
Læringsmål:
- Kjenne til innlesing fra og utskrift til fil, inkludert organisering av informasjon innad på linjer
- Kunne bruke filer, løkker, samlinger og funksjoner for å løse mer sammensatte problemer
(Rep.foiler om funksjoner og prosedyrer)
Løsningsforslag:
Uke 7
Læringsmål:
- Kjenne til motivasjon og bakgrunn for objektorientert programmering
- Kunne definere en klasse med instansvariabler, metoder og konstruktør
- Kunne opprette objekter av egendefinert klasse og bruke deres tjenester gjennom metodekall
- Forstå sentrale begreper som grensesnitt og innkapsling
- Kjenne til utviklingsprosessen for en klasse gjennom design, implementasjon og testing
Løsningsforslag:
Uke 8
Læringsmål:
- Forstå (mer av) hva som skjer bak kulissene når vi oppretter og bruker objekter
- Kjenne til forskjellen på å endre en referansevariabel og å endre objektet den refererer til
- Kunne skrive programmer med samlinger av (referanser til) objekter
- Kunne sette seg inn i enkle programmer med flere klasser og objekter som refererer til andre objekter
Løsningsforslag:
Uke 9
Læringsmål:
- Spesielle metoder for sammenligning og utskrift i egendefinerte klasser.
- Samlinger av objekter i beholdere (containers) som liste og ordbok.
- Strukturer med objekter av flere egendefinerte klasser.
- Repetisjon og (enda) mer detaljer om grensesnitt, innkapsling, hva skjer med referanser og objekter under kjøring
Løsningsforslag:
Filer:
Uke 10
Løsningsforslag:
- student.py
- fag.py
- hovedprogram.py
- blomsterkasse.py (med filinnlesing)
- blomsterkasseHovedprogram.py (med filinnlesing)