Detaljer om emnet INF200

INF200 Videregående programmering

English course Information

Søk etter andre emner

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

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 til stedet 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.
Anbefalte forkunnskaper:
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østparallel 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