Tentamen
Fredagen den 8 januari 2021 kl 14-17.
2021-01-13: Tentorna är i "karantän" pga smittspridningsrisk (var bestämt i förväg) så vi har inte kunnat börja rättningen ännu.
Uppdatering 2020-12-28: Enligt meddelande från EECS ledning den 18 december planeras fortfarande för salstenta, dock med extra säkerhetsåtgärder för undvikande av smittspridning.
Uppdatering om salstenta 2020-11-23: Den 12 november fick vi besked om att vi får ha en vanlig salstenta, förutsatt att det går att hitta tentavakter (inte säkert) och att det överhuvudtaget är tillåtet med salstentor på KTH i januari (inte heller säkert som det ser ut nu).
Oavsett hur tentan genomförs kommer att vara samma typ av frågor som på tidigare tentor, så vid förberedelser har ni fortfarande nytta av de gamla tentorna.
Anmälan
Är obligatorisk. Anmälan till tentan den 8 januari är öppen t.o.m. tisdagen den 15 december.
Tentans delar
Tentan är skriftlig och har två delar. Första delen består av enkla grundläggande frågor där nästan 80% måste besvaras rätt för att få godkänt betyg E. Tentans andra del består av lite svårare frågor och kan ge betygen C eller A.
Bonuspoäng
Från läsåret 20/21 tillämpas inte längre bonuspoäng på tentan. Bonuspoäng från laborationer finns fortfarande men tillgodoräknas inom labbmomentet.
Betyg och betygsgränser
Betygen F, FX, E, C och A ges på tentan. Betygsgränser kommer att publiceras senare.
Designmönster på tentan
Gäller kursomgången HT20.
För följande mönster krävs ytliga kunskaper, att kunna kort beskriva mönstrets användningsområde: Proxy, Mediator, Facade, State, Template Method.
För följande mönster krävs (utöver ytliga kunskaper) djupare förståelse, att kunna rita och känna igen mönstret i UML-diagram, förklara mönstrets beståndsdelar och funktion, kunna skriva kod som använder mönstret: Strategy, Model-View-Control, Singleton, Iterator, Observer, Composite, Decorator, Factory-teknik (enligt tillämpningen i labb 4, vi har inte tagit upp något specifikt mönster som använder Factory).
UML-diagram
I materialet till föreläsning 3 finns en genomgång av de UML-symboler vi använder i kursen. Studera detta material! Titta särskilt på hur symbolen romb (engelska: diamond) används. Rombsymbolen ska placeras vid den överordnade (eller ägande) klassen.
Kommentarer till F3-materialet:
Objekt av klassen C har (eller känner till) objekt av klassen D. Pilspetsen är vid D. Objekt av klassen E består av ett eller flera objekt av klassen F (romben är vid E). Objekt av klassen G äger exakt fem objekt av klassen H (romben är vid G).
Inför tentan:
Ni behöver inte kunna skilja mellan fylld och ofylld romb. Om det är lämpligt att använda den ena rombsymbolen så ges rätt för båda. Det är ofta svårt att se från kod vilken rombsymbol som passar bäst.
Att ange multiplicitet är viktigt. Enklast är att sätta endast en asterisk vid den klass som det finns många av i relationen (ett objekt av E har många objekt av F).
Pilspetsar är mycket viktiga. Sluten pilspets (som en triangel) ska användas vid arv och implementation av interface. Öppen pilspets ska användas vid relationerna "känner till" och "beror av".
Gamla tentor
Tre gamla tentor från DD1385 finns publicerade och några tentor från kursens föregångare, DD2385. Tentorna på DD1385 liknar dem från DD2385 på följande sätt.
Del 1 på DD1385 är mycket lik del 1 på DD2385, samma typ av frågor, samma svårighetsgrad eller något lättare. Öva på alla del 1 på DD2385-tentorna.
Del 2 på DD1385 liknar vissa frågor från del 2 på tentorna på DD2385. Exempel ges nedan.
Uppgifter där man ska skriva Java-kod förekommer definitivt på DD1385-tentor men i mycket mindre omfattning än på DD2385.
Gamla tentor på DD1385
Typfrågor
Några frågetyper finns alltid med på tentans del 1: På tentan 190109 är dessa fråga 1 (baskunskaper om designmönster), fråga 3 (rita UML-klassdiagram från Javakod) och fråga 6 (beskriva i detalj hur Comparable fungerar). På tentan 200110 är motsvarande typfrågor nr 1, 2 och 4. Frågan om Comparable ställs på lite olika sätt på olika tentor. Svaret måste vara detaljerat, nära körbar Javakod.
|