Kursen ger en introduktion till objektorienterad problemlösning och programmering. Innehållet baseras på programvaruutvecklingsprocessens olika delar, från problembeskrivning till lösning. I detta ingår analys, design, implementation, testning, debuggning och dokumentation. Kursen kommer att ha störst fokus på problemlösning och den praktiska programmeringsfärdigheten.
Moment 1, teoridel, 4.5 högskolepoäng
Färdigheterna i objektorienterad programmering tränas i programspråket Java. Kursen behandlar begreppen variabel, referens, datatyp, metod, parameteröverföring, objekt, klass, arv, polymorfi, Javainterface, abstrakt klass, olika kontrollstrukturer, input, output, filhantering och undantagshantering. Det behandlas även likheter och skillnader mellan olika relationer mellan klasser. Dessutom ges en introduktion till användning av programbibliotek, sökning och sortering. Dokumentation samt god programmeringsstil behandlas också i kursen. Kursen introducerar objektorienterad analys och design med CRC-kort (Class, Responsibilities, Collaborations) och rollspelsdiagram (RPD). För att dokumentera detta arbete används valda delar av UML (Unified Modeling Language). Dessutom ingår grundläggande programspråkkoncept som syntax, semantik, abstraktion, parameterisering och generalisering.
Moment 2, laborationsdel, 3 högskolepoäng
Delmomentet utgörs av ett antal obligatoriska inlämningsuppgifter.
Förväntade studieresultat
Efter avslutad kurs ska studenten kunna:
- utforma objektorienterade lösningar för småskaliga problem, med hjälp av CRC-kort och RPD
- konstruera och tolka UML-klassdiagram
- tolka, utöka och konstruera småskalig objektorienterad kod omfattande minst 5-6 klasser
- redogöra för och beskriva grundläggande objektorienterade begrepp
- förklara och använda sig av variabler, uttryck, kontrollstrukturer och metoder
- förklara hur data representeras i en dator och känna till datatypernas begränsningar
- skriftligt dokumentera ett mindre programmeringsprojekt enligt givna riktlinjer
Behörighetskrav
Grundläggande behörighet samt Ma D, Fy B.
Undervisningens upplägg
Undervisningen bedrivs i form av föreläsningar, arbete i datorlabb och övningar i mindre grupper. Utöver schemalagda aktiviteter krävs även individuellt arbete med materialet.
Examination
Examinationen sker dels genom skriftlig tentamen (på teoridelen) dels genom ett laborationsmoment. På en skriftlig tentamen sätts något av betygen Underkänd (U), Godkänd (3), Icke utan beröm godkänd (4) eller Med beröm godkänd (5). På laborationsmomentet ges endast betygen Underkänd (U) eller Godkänd (G). På hela kursen ges något av betygen Underkänd (U), Godkänd (3), Icke utan beröm godkänd (4) eller Med beröm godkänd (5). För att bli godkänd på hela kursen krävs att samtliga prov och obligatoriska moment är godkända. Betyget utgör en sammanfattande bedömning av resultaten vid examinationens olika delar och sätts först när alla obligatoriska moment är godkända. Studerande som godkänts i ett prov får inte undergå förnyat prov för att få ett högre betyg.
För studerande som inte godkänns vid ordinarie provtillfälle anordnas ytterligare provtillfälle.
En student som utan godkänt resultat har genomgått två prov för en kurs eller en del av en kurs, har rätt att få en annan examinator utsedd, om inte särskilda skäl talar emot det (HF 6 kap. 22 §).
Begäran om ny examinator ställs till styrelsen för Institutionen för datavetenskap.
TILLGODORÄKNANDE
Denna kurs kan ej räknas fullt ut i examen samtidigt som en annan nybörjarkurs i (objektorienterad/imperativt) programmering/programmeringsmetodik. Detta gäller t.ex. kurserna Programmeringsmetodik och programmering i ett objektorienterat språk A (TDBA57/TDBA63), Programmeringsmetodik A (TDBA28), Programmering i Java (TDBA54).
Vid tveksamheter bör den studerande rådfråga studievägledare vid Institutionen för datavetenskap.
Litteratur
Giltig från:
2009 vecka 4
Objects first with Java : a practical introduction using BlueJ Barnes David J., Kölling Michael 3. ed. : Harlowb Prentice Hall,c 2006 : Prentice Hall : 2006 : 480 s. : ISBN: 0-13-197629-X Se Umeå UB:s söktjänst