Logga in

Registrera

1DL221 · Uppsala universitet

Imperativ och objektorienterad programmeringsmetodik

Ny kurs

Kom igång gratis

Inga tentor än

Ladda upp dina tidigare tentor och få hjälp med att strukturera ditt studiematerial

Få dina tentauppgifter kategoriseradeBli guidad genom ditt studiematerialFå hjälp direkt med teori och tipsHåll koll på dina framsteg

Kurs info

KurssidaKursplan
HP
20
Språk
Svenska
Nivå
Grundnivå
Fakultet
Teknisk-naturvetenskapliga fakultetsnämnden
Institution
Institutionen för informationsteknologi

Lärandemål

Efter godkänd kurs ska studenten kunna:

  • förklara hur program exekverar och beskriva hur program lagrar och hanterar information.
  • förklara och exemplifiera kvalitativa och kvantitativa aspekter av ett programs design och implementation.
  • förklara skillnaden mellan manuell och automatisk minneshantering samt grundläggande relaterade begrepp (som stack, heap, statisk minnesarea) och använda verktyg för felsökning av minnesfel.
  • förklara hur större programuppgifter kan lösas och resonera om olika lösningsalternativ.
  • redogöra för hur enkla parallelliserbara problem kan lösas effektivt med relevanta hjälpmedel .
  • designa, koda, granska, testa, felsöka och dokumentera egna program, med hjälp av lämpliga verktyg.
  • läsa, förstå och modifiera icke-trivial kod som studenten själv inte har skrivit samt integrera nyskriven kod med existerande.
  • beskriva -- oberoende av programkoden -- den uppgift ett program skall lösa och de förutsättningar som krävs för att det skall kunna arbeta. Motivera varför programmet under dessa förutsättningar är korrekt, samt specificera och konstruera testfall och köra tester för att verifiera detta.
  • skriva lämplig dokumentation för programmering och testhantering.
  • tillämpa specifika utsnitt av kända utvecklingsprocesser och -metodiker (ex. agil utveckling, parprogrammering och testdriven utveckling).
  • beskriva olika former av testning och deras vikt i olika skeden av utvecklingsprocessen.
  • bidra till ett konstruktivt samarbete i programmeringsprojekt.
  • presentera och diskutera kursens innehåll muntligt och skriftligt med för utbildningsnivån lämplig färdighet.
Kursinnehåll
Principer som ligger till grund för imperativa och objektorienterade språk och variationer mellan språken. Programmering i sådana språk, programutveckling, dokumentation och testning med hjälp av därtill avsedda verktyg. I kursen studeras minst två imperativa språk: ett objektorienterat och ett utan särskilt stöd för objektorientering (ex. Java och C). Kursivt nämns skriptspråk och domänspecifika språk som t.ex. Emacs Lisp, shellskript och byggskript. Jämförelser med funktionella språk görs. Programstrukturer som tas upp är bland annat: procedur, funktion, array, loop, pekare, struktur, automatisk och manuell minneshantering, objekt, klass, metod, arv, polymorfism, undantag. Olika former av värdeöverföring tas upp - värdesemantik, referenssemantik - och jämförs call-by-name. Testning av moduler, t.ex. genom "svartlådetestning" (baserad på modulens specifikation) och genom "vitlådetestning" (där utvecklaren strävar efter att garantera att alla programsatser, exekveringsvägar eller metoder används under testet). Viss integrationstestning och kravbaserad systemtestning. Systematisk arbetsgång för kravspecifikation, problemanalys, programdesign, kodning, kodgranskning, testning, felsökning samt dokumentation.
Förutsättningar
  • Genomgången Programkonstruktion och datastrukturer varav 9 hp ska vara avklarade.
Litteratur

Saknas

Liknande kurser vid andra universitet
Kungliga Tekniska högskolan

Kungliga Tekniska högskolan

Programmeringsparadigm

DD13619 tentor
Chalmers tekniska högskola

Chalmers tekniska högskola

Maskinorienterad programmering

EDA4877 tentor
Kungliga Tekniska högskolan

Kungliga Tekniska högskolan

Grundläggande programmering

DD13336 tentor
Redo att boosta dina studier?

Gör som 15 000+ studenter och ta kontroll över ditt tentaplugg.

Kom igång gratis

Produkt

  • Priser

  • Karriär

Företag

  • Om oss

  • Blogg

  • Användarvillkor

  • Integritet

  • Support

Universitet

  • KTH

  • Uppsala universitet

  • Linköpings universitet

  • Chalmers

  • Lunds universitet

  • Luleå tekniska universitet

  • Stockholms universitet

  • Gymnasiet

Socialt

  • Instagram

  • Facebook

  • YouTube

  • TikTok

  • Linkedin

© 2026 Crash Course Sverige AB