Detaljer om emnet INF200

INF200 Videregående programmering

Emnet kan ha endringer på grunn av koronautbruddet. Sjekk Canvas og studentWeb.

English course Information

Søk etter andre emner

Viser emnet slik det undervises i studieåret med start i 2015 .

Emneansvarlige: Hans Ekkehard Plesser
Studiepoeng: 10
Ansvarlig fakultet: Institutt for matematiske realfag og teknologi
Frekvens: Årlig
Undervises på språk: EN, NO
(NO=norsk, EN=Engelsk)
Undervises i periode:
Emnet starter i høstparallellen. Emnet har undervisning i høstparallellen og undervisning og vurdering i januarblokken.
Første gang: Studieår 2010-2011
Emnets innhold:
  • Programmeringsverktøy: Utviklingsomgivelse, versjonskontroll
  • Repetisjon av grunnleggende programmering i Python
  • Objektorientert programmering i Python
  • Testbasert programmering og testrammeverk, dokumentasjonsverktøy
  • Debugging og profilering
  • Effektivisering med Cython
  • Programmeringsprosjekt
Læringsutbytte:

Etter gjennomført emne kan du:

  • utvikle programmer basert på prosedural og objektorientert programmering
  • lese og forstå programmer på tilsvarende kompleksitetsnivå
  • analysere problemstillinger og implementere algoritmer til deres løsning
  • benytte funksjonalitet levert av standardbiblioteker
  • lokalisere feil i programmer
  • optimere programytelse
  • benytte programmeringsverktøy som debugger, profiler, testrammeverk, dokumentasjonsverktøy og versjonshåndtering.

Du kan vurdere hensiktsmessighet av komplekse programmer og kan kvalitetssikre disse og vil ha utviklet innsyn i programmererens ansvar for korrekt og pålitelig funksjon av egne programmer, kvalitetssikring, og dokumentasjon.

Læringsaktiviteter:

I høstparallellen får du kunnskap om mer avanserte programmeringsteknikker gjennom forelesninger og utvikler dine ferdigheter i øvinger på datasal, der du arbeidere med kortere programmeringsoppgaver. Gjensidig kodegjennomgang ved hjelp av moderne samarbeidsverktøy er en viktig del av læringen. Din aktive deltakelse er sentralt for vellykket læring i emnet. 

Selvstudium: For å oppnå gode programmeringsferdigheter må deltakerne aktivt innøve de programmeringskonsepter og teknikker som behandles i emnet, dvs du som student i INF200 må skrive og forbedre mindre programmer på egen hånd gjennom hele høstparallelen.

Prosjektoppgave i januarblokk: I januarblokk gjennomfører du en prosjektoppgave sammen med en annen student. Gjennom prosjektoppgaven lærer du å gjennomføre et større programmeringsprosjekt. Prosjektet vil dekke de fleste teknikkene dekket av emnet, og teknikkene innøves ytterlige ved å ta dem i bruk i prosjektet. Tilnærmingen til oppgaven, løsningsalternativer og oppstående problemer drøftes i plenum.

Alle studenter skal være tilstede i undervisningslokalet i 'kjernetiden' kl 09-15 i hele januarblokk.

Læringsstøtte:
Online diskusjonsforum, orakeltjeneste i datasal, veiledning underprosjektarbeid.
Pensum:
Vil bli kunngjort på Fronter før kursstart.
Forutsatte forkunnskaper:
INF120 eller tilsvarende programmeringskompetanse: Du kan selvstendig løse øvingsoppgaver fra pensumboken i INF120 (Langtangen, A Primer on Scientific Programming with Python, kap 1-6, 8). Har du programmeringskompetanse i andre programmeringsspråk, må du påregne ekstraarbeid for å komme deg inn i Python.
Obligatorisk aktivitet:
Du må få godkjent obligatoriske programmeringsoppgaver i høstparallelen for å kunne begynne med prosjektoppgaven i januarblokk. Detaljer kunngjøres ved kursstart.
Vurderingsordning:

Langsgående vurdering av prosjektoppgaven.

Vurderingen består av to deler:

  • Individuell presentasjon og diskusjon av oppgaven (0-30 poeng). 
  • Innlevert kildekode med dokumentasjon (0-70 poeng).

Dersom to studenter samarbeider om prosjektet, gis en felles vurdering for del 2, mens det gis en individuell vurdering for del 1. Karakteren i emnet fastsettes på grunnlag av oppnådd poengsum.

Sensor:
Ekstern sensor godkjenner oppgavestillingen for prosjektoppgave, samt sensorveiledning. Sensor deltar i vurdering av studentene under de individuelle presentasjonen og diskusjonene og endelig karaktersetting.
Merknader:
Emnet består av opplæring i videregående programmering i høstparallellen og en prosjektoppgave i januarblokk. Deltakerne i emnet må være tilstede på heltid i januarblokk.
Normert arbeidsmengde:
Høstparallell 150t = 26t forelesninger + 26t datalab + 98t egenarbeid med lærebok og programmeringsoppgaverJanuarblokk 150t = 15t kollokvie + 120t prosjektoppgave + 15t forberedelse av avsluttende presentasjon
Opptakskrav:
Realfag
Undervisningstid:
  • Høstparallel: 26t forelesning, 26t datalab
  • Januarblokk: 84t: 14 arbeidsdager med minimum 6 timer prosjektarbeid
Eksamensdetaljer: Langsgående vurdering: A - E / Ikke bestått