HI1001 Programmering, fortsättningskurs 7,5 hp
Object Oriented Programming
Utbildningsnivå
GrundnivåKursnivå (A-D)
AHuvudområ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.
