Göm menyn

Introduktion till labbar och projekt

Kursen innehåller fyra laborationer med mer detaljerad handledning samt ett projekt med stor frihet att välja uppgift efter eget intresse.

Vad är syftet med de inledande labbarna?

Vill kursledningen desperat ha 120 nästan identiska program som hälsar världen och som summerar, multiplicerar och hittar primtal? Nej, givetvis inte. Slutresultatet som du får med dig efter labbarna är alltså inte en uppsättning små program, även om det kan se så ut på ytan. Slutresultatet består av kunskap, förståelse och färdigheter, och programmen finns där för att du ska få undersöka vägen som leder till en viss enkel funktionalitet.

Därför finns det en hel del information i labbarna som egentligen inte behövs för att räkna ut några siffror. Text som förklarar sammanhang, som visar varför man gör på ett visst sätt, som generaliserar från nuet till det du kommer att ha nytta av i framtiden. Ta dig tid att läsa, fundera och reflektera, så kan du uppnå labbarnas verkliga syfte.

Vad innehåller labbarna?

  • Labb 1 - Introduktion till Java. Här ger vi ett första smakprov på Java utan objektorientering, och demonstrerar användbara funktioner i utvecklingsmiljön.

  • Labb 2 - Introduktion till objektorientering. Här får ni skapa era första klasser och objekt.

  • Labb 3 - Ärvning. Här får ni prova på att skapa en hierarki och klasser, och ser vad detta möjliggör: Ärvning, subtypspolymorfism, och så vidare.

  • Labb 4 - Objektorientering och Java. Titta närmare på viktiga begrepp inom objektorientering och hur dessa stöds i Java. Utforska några objektorienterade designmönster. Rent konkret görs detta genom att man programmerar ett enkelt Tetris-spel.

  • Projektuppgift. Designa och implementera ett eget program med objektorienterade tekniker.

Varje avslutad labb ska demonstreras för labbhandledaren innan deadline.

Se även följande sidor, men tänk på att dessa också är gamla och arkiverade; kontakta examinatorn om du vill komplettera under ett senare år!

Labbtider och handledning

Att göra: Labbanmälan (innan första labben!)

I labb 1–4 delar vi upp oss i 8 "storgrupper", A–H, med omkring 15–20 studenter i varje. Inom storgruppen arbetar alla enskilt.

  1. För varje klass finns två storgrupper: D1A→A/B,  D1B→C/D,  D1C→E/F,  U1→G/H. Kognitionsvetare och övriga kan välja mellan A/B/G/H, eftersom de alternativen har färre studenter. Kontrollera i webschemat vilket alternativ som skulle passa dig bäst!

  2. Anmäl dig i WebReg3. Är det fullt i den valda storgruppen får du välja en annan. Om det är fullt i alla grupper, kontakta examinatorn.

Info: Om schemalagda labbtider

  1. Gå alltid till "din" sal. Då kan din egen handledare lära känna dig bättre.

  2. I mån av tid och plats kan man även gå till andra tillfällen och/eller fråga andra handledare. Man ska dock redovisa för sin egen handledare.

  3. Ni ska normalt arbeta en hel del även utanför schemalagd labbtid!

  4. Handledarna ska vara närvarande vid schemalagda labbar men kan (precis som ni) ta en rast mitt i. Vid sjukdom täcker övriga handledare upp så gott det går. Vi lägger redan ut mer labbtid för att kompensera för detta!

Info: Att jobba hemma – viktigt!

En JAR-fil med IDEA-inställningar finns tillgänglig för den som arbetar hemma. Ladda ner den och kör File | Import Settings. Ni kan sedan behöva göra vissa manuella val av profiler i File | Settings, t.ex. välja inspektionsprofilen TDDD78-2015-v1 i File | Settings | Editor | Inspections. Detta är särskilt viktigt i de senare labbarna och projekten där inspektionsvarningarna måste kontrolleras innan inlämning!

Info: Utnyttja handledningen!

Utnyttja handledningstillfällena till fullo! Gå dit, även om det är trevligt att sitta hemma.

Vänta inte med att fråga till du har spenderat 20 timmar och inser att du har kört fast totalt! Vi kan inte hjälpa er om vi inte vet att ni har problem. 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! Be gärna handledaren att helt enkelt titta lite på programmet då och då, speciellt under labb 4 och projektet.

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.

Allmänna regler om inlämning, deadlines och fusk

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, använda otillåtna hjälpmedel eller ej godkända AI-baserade assistenter) 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: 2018-08-07