ML1301 Programmering fortsättningskurs 7,5 hp

Object Oriented Programming

Kursomgång och genomförande

Kursomgångar saknas för tidigare och kommande terminer, samt för innevarande termin.

Kursinformation

Innehåll och lärandemål

Kursinnehåll *

  • Abstrakta datatyper, inkapsling, återanvändning
  • Utvecklingsmiljö
  • Programspråkets grundstrukturer, inbyggda datatyper
  • Klasser och objekt, arv, polymorfism
  • Objektorienterad programutveckling: analys, design och implementering
  • Klassdiagram och relationer i t ex uml
  • Undantag
  • Strömmar
  • Trådar
  • Grafiska gränssnitt och händelsehantering

Lärandemål *

Kursen skall ge goda kunskaper i syntax och teknik vid objektorienterad programmering samt ge en introduktion till objektorienterad design.

För godkänt betyg skall studenten:

  • Kunna redogöra för de olika faserna i objektorienterad programutveckling
  • Utifrån ett enkelt problemområde kunna skapa en objektorienterad modell med klasser med klart avgränsade uppdrag samt relationer mellan dessa, som kan användas för att implementera en applikation
  • Kunna beskriva lösningen med hjälp av klassdiagram enligt UML el liknande.
  • Skapa klasser som, där så är möjligt, kan återanvändas i liknande sammanhang

För godkänt betyg skall studenten dessutom kunna:

  • Använda sig av en utvecklingsmiljö för att skriva, felsöka och exekvera objektorienterade program
  • Skriva välstrukturerade program med väl avgränsade klasser, som är lätta att underhålla och vidareutveckla
  • Använda sig av arv, och beroende på programmeringsspråk, interfaces för att utöka klassers funktionalitet
  • Skriva polymorf kod som kan exekveras för flera olika subtyper
  • Hantera undantag (exceptions) på lämplig nivå i programmet
  • Använda sig av strömmar för att läsa från/skriva till olika typer av källor/mål
  • Skriva enkla program för parallella aktiviteter (trådar), samt kunna redogöra för problem som kan uppstå vid parallella aktiviteter
  • Skriva applikationer med händelsestyrda grafiska gränssnitt med enklare tillämpningar av mönstret model-view-controller

För högre betyg skall studenten kunna:

  • Bearbeta programmeringsuppgifter med större komplexitet ifråga om de sex avslutande punkterna i ovanstående stycke, innefattande objektorienterad analys, design och implementering

Kursupplägg

Ingen information tillagd

Kurslitteratur och förberedelser

Särskild behörighet *

Goda kunskaper i grundläggande programmering, t ex kursen ML1300/HI1900/6S2950 Programmering, grundkurs

Rekommenderade förkunskaper

Ingen information tillagd

Utrustning

Ingen information tillagd

Kurslitteratur

KSierra K & Bates B, Head First Java 2nd ed. O´Reilly 2005.

Examination och slutförande

Betygsskala *

A, B, C, D, E, FX, F

Examination *

  • TEN1 - Tentamen, 3,0 hp, betygsskala: A, B, C, D, E, FX, F
  • ÖVN1 - Övningsuppgifter, 4,5 hp, betygsskala: A, B, C, D, E, FX, F

Examinator beslutar, baserat på rekommendation från KTH:s samordnare för funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Övriga krav för slutbetyg *

Godkänd tentamen
Tentamen innehåller både teoretiska och praktiska moment.
Godkända laborationer.
Slutbetyget grundas på samtliga moment. Betygsskalan A-F.

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Ingen information tillagd

Examinator

Ingen information tillagd

Ytterligare information

Kurswebb

Ytterligare information om kursen kan hittas på kurswebben via länken nedan. Information på kurswebben kommer framöver flyttas till denna sida.

Kurswebb ML1301

Ges av

ITM/Hållbar produktionsutveckling

Huvudområde *

Teknik

Utbildningsnivå *

Grundnivå

Påbyggnad

Ingen information tillagd

Etiskt förhållningssätt *

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Övrig information

Tidigare kursnummer: HI1001/6S3001