HI1001 Programmering, fortsättningskurs 7,5 hp

Object Oriented Programming

  • Utbildningsnivå

    Grundnivå
  • Kursnivå (A-D)

    A
  • Huvudområde

    Informationsteknik
    Teknik
  • Betygsskala

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

Det finns inget planerat kurstillfälle.

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

Kursens huvudsakliga innehå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

Behörighet

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

Litteratur

En av följande böcker (studenterna kan välja själva):

Object-oriented Software Development Using Java, 2nd edition, Xiaoping Jia, Addison Wesley, ISBN 0-321-21073-5

Introduction to Java Programming, Comprehensive version, 7th edition, Y. Daniel Liang, Pearson Education, ISBN 0-13-605966-X

Examination

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

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.

Ges av

STH/Data- och Elektroteknik

Kontaktperson

Anders Lindström, anders.lindström@sth.kth.se

Examinator

Anders Lindström, anders.lindström@sth.kth.se

Övrig information

Tidigare kursnummer: 6H3001/6S3001

Versionsinformation

Kursplan giltig från och med HT10.
Examinationsinformation giltig från och med HT07.