Hei og velkommen til gruppe 25 i IN1000 :)
Her legges det ut diverse oppgaver samt slides og programmer som blir gjennomg?tt i timen i egne ukesmapper.
Vi har digital lab p? onsdager 12:15-14:00 og digitale gruppetimer p? mandager 12:15-14:00. Zoom linker finnes i timeplanen.
Stikk ogs? innom mattermost kanelen v?r hvor jeg kommer til ? gi ut beskjeder. P? Mattermost kan du sp?rre i gruppekanelen v?r eller sp?rre meg direkte @sirisoll om obliger, innholde i kurset, inspill til gruppetimene, etc. - vi finner ut av det sammen! Du kan ogs? kontakte meg p? sirisoll@uio.no
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
Uke2
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
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
Uke 4
L?ringsm?l:
- Kjenne til skrivem?te for while-l?kker og for-l?kker
- Kunne bruke l?kker for ? l?se problemer
- Kunne bruke l?kker sammen med samlinger
- Ha kjennskap til parametre i prosedyrer og parameteroverf?ring
- Kjenne til funksjoner og kunne bruke de for ? f? unng? redundans og f? mer strukturerte programmer
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
Uke 6
Dette er en repitisjonsuke - pass p? at du f?ler at du har kontroll p? temaene fra uke 1-5.
Er det et spesifikt tema du lurer p?, s? pr?v deg p? mengdetreningsoppgavene p? Trix relatert til det temaet.
Du kan ogs? sp?rre meg om hjelp p? Mattermost @sirisoll :)
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
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
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
Uke 10
L?ringsm?l:
-
Ha kjennskap til klassiske strukturer som er nyttige i programmering: lenkede lister, tr?r og grafer (ikke stress med denne, det er f?rst og fremst aggregering dere skal kjenne til)
-
Kunne praktisere aggregering
-
Det viktigste i denne og kommende uker er at dere trener p? ? skrive programmer med flere klasser, og bruker teorien som er gjennomg?tt for ? forst? hvorfor og hvordan de virker som de gj?r.