Hoppa till huvudinnehållet
Till KTH:s startsida

DD1388 Programsystemkonstruktion med C++ 7,5 hp

Kurs-PM VT 2022-60540

Version 1 – 2023-01-11 17:18:29

Kursomgång

VT 2022-1 (Startdatum 2022-01-18, Svenska)

Undervisningsspråk

Svenska

Kursen ges av

EECS/Datavetenskap

Kurs-PM VT 2022

Rubriker markerade med en asterisk ( * ) kommer från kursplan version HT 2021

Innehåll och lärandemål

Kursinnehåll

C++ utveckling från C och Simula till ISO-standard.

Genomgång av alla delar av C++ enligt ISO-standarden, däribland klasser, enkelt och multipelt arv, överlagring, generiska funktioner och klasser, särfall, konstantdeklarationer, strömmar, namnrymder, typekvivalens och typkompatibilitet, preprocessorn.

Programkonstruktion med C++: god programmeringsstil, tillvägagångssätt vid objektorienterad utveckling i C++, tumregler och tips för design och implementation av C++-program, stöd för modularisering och minneshantering, effektivisering av programkoden, vanliga fel och fällor, Unicode och lokalisering, användning av standardbiblioteket, verktyg för testning och felsökning, statisk och dynamisk länkning och namnmangling, portabilitet.

Lärandemål

Efter fullgjord kurs ska du kunna

  • programmera med dynamisk minnesallokering,
  • tillämpa standardbiblioteket,
  • skriva riktig C++-syntax,
  • skriva testkod,
  • relatera till avancerad C++-litteratur,
  • programmera generiskt med typparameterisering,
  • tillämpa dina förkunskaper om objektorienterad programmering i C++,
  • modellera ett omfattande objektorienterat projekt,
  • presentera och motivera en objektorienterad modell

i syfte att

  • känna att du behärskar hela språket C++,
  • med självförtroende kunna gå in i C++-projekt i näringslivet och vidareutveckla eller underhålla koden.

Detaljplanering

Detaljplanering visas i canvas på förstasidan.

Förberedelser inför kursstart

Rekommenderade förkunskaper

Kunskaper i objektorientering och Javaprogrammering motsvarande DD1361 Programmeringsparadigm, DD1385/DD2385 Programutvecklingsteknik, DD1346 Objektorienterad programkonstruktion eller DD1332 Objektorienterad programmering.     

Programvara

Vi använder g++ på kursen men andra kompilatorer som clang och viualstudio är tillåtna så länge koden går att kompilera med g++.

KTH:s github används för att ladda upp kod.

Examination och slutförande

Betygsskala

A, B, C, D, E, FX, F

Examination

  • LAB1 - Laborationsuppgifter, 6,0 hp, Betygsskala: A, B, C, D, E, FX, F
  • TEN1 - Tentamen, 1,5 hp, Betygsskala: P, F

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Övriga krav för slutbetyg

Godkända laborationsuppgifter och tentamen.

Möjlighet till komplettering

Det går att, under kursens gång, komplettera inlämnad uppgift som inte uppfyller kraven.

Möjlighet till plussning

Det går att lämna in betygshöjande uppgifter nästa kursomgång 2024.

Möjlighet till ersättningsuppgifter

Labbarna är studentens sätt att visa att man tillgodogjort sig ämnet. Om man inte kan förklara sin kodinlämning kan en ersättningsuppgift ges istället.

Resultatrapportering

Resultatrapportering sker under kursens gång samt en gång innan administrationen gör sommaruppehåll. Plussningar och resultat från äldre omgångar rapporteras inte per automatik. Vänligen skriv ett brev till kursledare och/eller examinator.

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare Information

Ingen information tillagd

Fakta om kursomgång

Startdatum

2022-01-18

Kursomgång

  • VT 2022-60540

Undervisningsspråk

Svenska

Kursen ges av

EECS/Datavetenskap

Kontakter