Forelæsning og øvelser. Der stilles 3 programmeringsprojekter i løbet af 13-ugers perioden, alle tæller med i den samlede karakter efter en helhedsvurdering.
At sætte deltagerne i stand til at programmere i C++, at begynde med de mest anvendelige begreber frem for de mest primitive, at beskrive virkelige problemer og løsninger, at dække både sproget og standard bibliotekerne.
Læringsmål:
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
vælge og anvende de simple datatyper, samt strengtypen fra <string>
definere og konstruere datastrukturer og funktioner
anvende og eksperimentere med dynamiske datastrukturer fra bibliotekerne <list> og <vector>
beskrive og anvende sekventielle og associative containere <map> med tilhørende algoritmer
konstruere og demonstrere generiske funktioner og klasser (templates)
anvende og definere klasser med indkapsling og konstruktører
præsentere og producere pointere og tabeller (array) med styring af lager
generalisere og udvikle simple filer samt I/O
definere abstrakte datatyper
anvende arv og dynamisk binding
arrangere virtuelle funktioner med henblik på opbygning af polymorfe datastrukturer
Kursusindhold:
Sprogkonstruktionerne i C++. Efter en kort introduktion som sammenligner funktionsdrevet, datadrevet og objektorienteret programmering, er udgangspunktet programmer som anvender stadard biblioteksabstraktioner, senere bliver fokus at definere sine egne abstraktioner. De grundlæggende datatyper, valg og beslutninger, løkker, arrays og strenge, pegere og referencer, programmering med funktioner og templates, programfiler og pre-processoren, struct og klasser, klasse-operationer, operator overloading, nedarvning, virtuelle funktioner og polymorfisme, programfejl og behandling af undtagelser, klasse-templates, input og output operationer, og standard template biblioteket(STL) bliver berørt undervejs.
Litteratur:
Y. Daniel Liang: "Introduction to Programming with C++": International Version, 2/E, Pearson Higher Education copyright 2010, ISBN-10: 0131365878 ISBN-13: 9780131365872
Bemærkninger:
Fra foråret 2009 anvendes kursusinholdet til et tværgående fagligt projekt på 2. semester i 3-ugers perioden (CDIO).
Mulighed for GRØN DYST deltagelse:
Kontakt underviseren for information om hvorvidt dette kursus giver den studerende mulighed for at lave eller forberede et projekt som kan deltage i DTUs studenterkonference om bæredygtighed, klimateknologi og miljø (GRØN DYST). Se mere på http://www.groendyst.dtu.dk/kursustilmelding.aspx