TDDC69 Objektorienterad prog. och Java
Introduktion till labbar
Kursen innehåller tre laborationer med en mer detaljerad handledning i "tutorial-format", samt en projektuppgift med stor frihet att välja efter eget intresse. Informationen är uppdelad på labbspecifika sidor och generella informationssidor. Det är viktigt att du läser alla sidor!
-
Laboration 1 - Introduktion.
Den första laborationen är utformad för att ge er en chans att börja med vissa praktiska aspekter av objektorienterad programmering i Java så tidigt som möjligt, så att vi kan varva teori (föreläsningar) med praktik (labbar). Eftersom vi börjar så tidigt går vi ännu inte så djupt i de objektorienterade begreppen i denna labb. Istället är fokus på att ge ett första smakprov på Java och att demonstrera användbara funktioner i utvecklingsmiljön, något ni kan ha stor nytta av under senare laborationer och under projektet. Laborationen är i tutorial-form där ni ges konkret ledning i varje steg. -
Laboration 2 - Objektorientering och Java.
Här börjar vi titta närmare på en del viktiga begrepp inom objektorientering och hur dessa stöds i Java. Rent konkret görs detta genom implementationen av ett enkelt spel, Tetris, där vi bland annat tittar på lämpliga sätt att modellera de klasser som behövs. Laborationen inleds i tutorial-form, men den konkreta vägledningen i början blir mindre och mindre detaljerad när ni närmar er slutet. -
Laboration 3 - Objektorienterad programmering i C++.
Denna labb sker parallellt med projektet och är tänkt att introducera grundläggande objektorienterad programmering i C++. Poängen med laborationen är att få använda många av OO-konstruktionerna i C++ (härledning/arv, polymorfism, RTTI, ...), och upptäcka skillnaderna jämfört med Java. -
Projektuppgift.
Projektet går ut på att designa och implementera ett eget program med objektorienterade tekniker.
Se även informationen om:
- Grupper och registrering
- Deadlines för inlämning av labbar och projekt
- Utvecklingsmiljöer som du kan använda
- Krav på programkod som ska lämnas in
- Inlämning av labbar och projekt
Eget arbete
I denna kurs måste du arbeta mycket utanför schemalagd tid. Närmare bestämt används ca 20 av kursens nominellt 160 timmar till föreläsningar och ca 40 timmar till handledda labbtillfällen, vilket ger runt 100 timmar arbete på icke schemalagd tid. Uppdelat på de 5 veckor då det mesta labbarbetet sker blir det ca 20 timmar i veckan, 4 timmar per dag, plus de handledda labbarna!
Handledningstillfällen
Ett 20-tal handledningstillfällen finns bokade. Utnyttja dem till fullo! Detta innebär bland annat att du faktiskt går dit, även om det är trevligt att sitta hemma och även om du redan är en bra programmerare.
Vänta inte med att fråga till du inser att du har kört fast totalt! Det händer att vi får klagomål från arga studenter som har spenderat 40 timmar på att försöka lösa ett svårt problem – utan att överhuvudtaget fråga handledaren. Vi kan inte hjälpa er om vi inte vet att ni har problem! Givetvis är det bra att vara självständig och inte ge upp omedelbart för minsta lilla problem, men när man verkligen har försökt är det inte en svaghet att fråga. Labbar är ett sätt att lära sig, inte bara ett sätt att visa vad man redan kan.
De riktigt svåra problemen är de man inte ens vet om att man har! Vänta därför inte med att fråga till du vet att du har ett problem. Särskilt under det friare projektet är det viktigt att be handledaren att helt enkelt titta lite på programmet då och då, även om du inte har en specifik fråga. Ett tidigt tips om hur du t.ex. kan strukturera om programmet för att implementera en funktionalitet på ett smidigare sätt, eller ett tidigt påpekande om ett krav du hade missat, kan bespara dig mycket hårt slit.
Om du missar att uppfylla ett krav, och vi inte har fått chansen att påpeka det tidigt genom att du är närvarande regelbundet, kan vi så klart inte heller ta hänsyn till hur mycket arbete det blir när du måste försöka uppfylla det kravet i efterhand.
I slutet är fokus på projektdemonstrationer under vissa handledningstillfällen. Då får demonstrationer förtur, medan frågor (särskilt mer komplicerade frågor) kan få vänta till det inte finns någon mer grupp som är redo för demonstration. Detta kan innebära att handledaren inte alls hinner med frågor under dessa tillfällen. Detta gäller tillfällena i halvklass under de två sista veckorna.
Under övriga tillfällen prioriteras normalt frågor. Detta innebär att både labbdemonstrationer och projektdemonstrationer får vänta till alla grupper som har frågor är klara. Anledningen till detta är att frågor ofta behöver få svar innan en grupp kan fortsätta med sitt arbete, medan demonstrationer ofta kan vänta till senare. Undantag kan dock göras vid behov, och en pågående demonstration avbryts normalt inte för frågor.
Labbhandledare och labbsalar
I WebReg anmäler ni er i en specifik grupp, A/B/C/D/E/F. Varje labbhandledare har hand om två sådana grupper, AB / CD / EF.
Schemat i TimeEdit visar vilka labbsalar som finns tillgängliga vid varje labbtillfälle. Salarna räknas upp i ordning från grupp A till grupp F. Fredag 31/8 har vi till exempel salarna SU00 (A), SU01 (B), SU02 (C), SU03 (D), SU04 (E) och SU06 (F). Detta är viktigt för att ni ska hitta er labbhandledare! Är det en dubbelPUL spelar det så klart ingen roll var ni sätter er.
Allmänna regler
Följande regler gäller för samtliga kurser på IDA.
Regler för examinering av datorlaborationer vid IDA
Datorlaborationer görs i grupp eller individuellt, enligt de instruktioner som ges för en kurs. Examinationen är dock alltid individuell.
Det är inte tillåtet att lämna in lösningar som har kopierats från andra studenter, eller från annat håll, även om modifieringar har gjorts. Om otillåten kopiering eller annan form av fusk misstänks, är läraren skyldig att göra en anmälan till universitetets disciplinnämnd.
Du ska kunna redogöra för detaljer i koden för ett program. Det kan också tänkas att du får förklara varför du har valt en viss lösning. Detta gäller alla i en grupp.
Om du förutser att du inte hinner redovisa i tid, ska du kontakta din lärare. Då kan du få stöd och hjälp och eventuellt kan tidpunkten för redovisningen senareläggas. Det är alltid bättre att diskutera problem än att, t.ex., fuska.
Om du inte följer universitetets och en kurs' examinationsregler, utan försöker fuska, t.ex. plagiera eller använda otillåtna hjälpmedel, kan detta resultera i en anmälan till universitetets disciplinnämnd. Konsekvenserna av ett beslut om fusk kan bli varning eller avstängning från studierna.
Policy för redovisning av datorlaborationer vid IDA
För alla IDA-kurser som har datorlaborationer gäller generellt att det finns en bestämd sista tidpunkt, deadline, för inlämning av laborationer. Denna deadline kan vara under kursens gång eller vid dess slut. Om redovisning inte sker i tid måste, den eventuellt nya, laborationsserien göras om nästa gång kursen ges.
Om en kurs avviker från denna policy, ska information om detta ges på kursens webbsidor.
För denna kurs, se informationen om deadlines.
Sidansvarig: Jonas Kvarnström
Senast uppdaterad: 2012-08-29
