INF5660 – Avansert probleml?sning med h?yniv?-spr?k
Beskrivelse av emnet
Kort om emnet
Avanserte sider ved script-spr?kene Perl og Python, bl.a. bygging av klassehierarkier under kj?ring, spr?kenes C API og effektiv manipulering av Perl og Python datastrukturer i C, C++ og Fortran. Design av store programsystemer der tidskritiske operasjoner (s?rlig intensive numeriske beregninger) migreres til eller utnytter eksisterende C, C++ eller Fortran biblioteker. Programmering, kompilering/linking, optimalisering og profilering av C, C++ og Fortran kode. Software engineering aspekter som regresjonstesting (spesielt for numeriske simuleringer), pakking og distribuering av store programpakker med mange avhengigheter, dual-programming, kodestandarder, dokumentasjon. Praktisk probleml?sning st?r sentralt. Studentene m? gjennomf?re st?rre prosjektoppgaver.
Det forutsettes at studentene er noe kjent med C og C++ (hvis ikke m? en del merarbeid p?regnes). Eksemplene i kurset er for det meste hentet fra numeriske simulering (spesielt l?sning av partielle differensiallikninger), uten at det forutsettes noe s?rlig bakgrunn i matematikk. Det kan imidlertid v?re fordel ? ha tatt (eller ta parallelt) kurs i numeriske metoder, simulering eller visualisering (i informatikk, fysikk, matematikk).
Hva l?rer du?
Studentene skal f? innblikk i hvordan avanserte programsystemer kan bygges ved en dynamisk design i h?yniv? script-spr?k og kombineres med lavniv?-biblioteker i C, C++ og Fortran for effektivitet. Gjennom probleml?sning og prosjektoppgaver skal studentene f? teknisk erfaring med kompilerte spr?k som C, C++ og Fortran, innsikt i mer avanserte og dynamiske sider ved script-spr?k, og l?re seg verkt?y og teknikker for ? verifisere og distribuere programsystemer.
Opptak og adgangsregulering
Studenter m? hvert semester s?ke og f? plass p? undervisningen og melde seg til eksamen i Studentweb.
Dersom du ikke allerede har studieplass ved UiO, kan du s?ke opptak til v?re studieprogrammer, eller s?ke om ? bli enkeltemnestudent.
Forkunnskaper
Anbefalte forkunnskaper
INF3330 – Probleml?sning med h?yniv?-spr?k (nedlagt) / INF4330 – Probleml?sning med h?yniv?-spr?k (nedlagt) /IN228
Undervisning
Forelesninger og ?vingsoppgaver i to intensive bolker i v?rsemesteret. Det m? gjennomf?res st?rre prosjektoppgaver.
Eksamen
Best?tt/ikke-best?tt p? grunnlag av innleverte prosjekt. Et utvalg studenter vil bli trukket ut til muntlig eksaminasjon.
Informasjon om utsatt pr?ve (kontinuasjon) finner du her: /studier/admin/eksamen/sykdom-utsatt/mn/index.html.
Mer informasjon om eksamen ved MN-fakultetet kan du lese p? fakultetets eksamenssider: http://www.mn.uio.no/studier/admin/index.html.
Annet
Merk at det er obligatorisk oppm?te p? f?rste forelesning.
Tilsynssensor for emnet er: Jan Olav Langseth