Kursusbeskrivelse for
Objektorienteret programmering
ved
Keld Helsgaun
1. Formål
Kursets formål er at kvalificere den studerende til at beherske og anvende centrale begreber og teknikker i forbindelse med udvikling af objektorienterede programmer.
2. Mål
Undervisning i objektorienteret programmering er mere end undervisning i syntaks og semantik for et objektorienteret programmeringssprog. Beherskelse af objektorienteret programmering kræver fortrolighed med objektorienterede begreber samt færdighed i at kunne anvende disse effektivt og systematisk ved udvikling af programmer.
Målet er, at den studerende efter gennemførelse af kurset
3. Indhold
Kursets indhold kan overordnet beskrives ved følgende punkter:
4. Form
Undervisningen foregår ved forelæsninger og øvelser.
Øvelserne har som mål at opøve de studerendes færdigheder i objektorienteret programmering igennem løsning af en række mindre, velafgrænsede programmeringsopgaver.
5. Evaluering
Afleveringsopgave med mundtlig prøve.
Der skal udarbejdes en rapport, der beskriver løsningen af en af de(n) studerende valgt programmeringsopgave. Opgaven løses i grupper på 2 studerende. Det er dog også muligt at løse opgaven individuelt. Opgavens formulering skal være godkendt af kursuslæreren. Det forventes, at opgaven løses i løbet af kursusperioden.
Rapporten udgør grundlaget for bedømmelsen. Den mundtlige prøve, der varer 10-20 minutter per studerende, har primært til formål at undersøge, om den enkelte studerende har deltaget i opgavens løsning i et tilstrækkeligt omfang.
6. Lærebog
Som lærebog anvendes
Xiaoping Jia
Object-Oriented Software Development Using Java
Addison-Wesley, 2003 (Second Edition)
Som supplerende litteratur anbefales:
David Flanagan
Java in a Nutshell
O'Reilly, 2002
David Flanagan
Java Foundation Classes in a Nutshell
O'Reilly, 1999
Ken Arnold, Jamnes Golsling, David Holmes
The Java Programming Language
Third Edition
Addsion-Wesley, 2000
Barbara Liskov, John Guttag
Program Development in Java: Abstraction, Specification, and Object-Oriented Design
Addsion-Wesley, 200
Cay Horstmann:
Object-Oriented Design & Patterns
John Wiley & Sons, 2002
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Design Patterns - Elements of Reusable Object-Oriented Software
Addsion-Wesley, 1995
7. Deltagerforudsætninger
Ingen formelle forudsætninger.
Anbefalede forudsætninger:
Fulgt kurset Dat-A eller Indledende programmering.
Fulgt kurset Begreber og redskaber i programmering.
Gennemført et datalogisk projekt svarende til projektet på OB modul 1 eller TIT 1. semester.
8. Forelæsninger
Til stofgennemgang er afsat 10 forelæsningsgange. En foreløbig plan for forelæsningerne er vist nedenfor. Ret til ændringer forbeholdes.
(6/9) Introduktion (Kapitel 1, 2 og 3)
Introduktion til objektorienteret programmering
(11/9) Klasser (Kapitel 4)
Klasser, referencer, metoder, pakker, undtagelser
(20/9) Nedarvning (Kapitel 5)
Overlæsning, grænseflader, design
(27/9) Objektorienteret design (Kapitel 6 og 7)
Abstraktion, polymorfi, faktorisering
(4/10) Frameworks (Kapitel 8, afsnit 8.1, 8.2 og 8.4)
Collections, strømme, filer
(11/10) Grafiske brugergrænseflader I (Kapitel 8, afsnit 8.3)
Basale grafiske komponenter, beholdere, hændelser, layout
(18/10) Grafiske brugergrænseflader II (Kapitel 9)
Flere grafiske komponenter
(25/10) Samtidighed (Kapitel 11)
Tråde, synkronisering
(1/11) Netværksprogrammering (Kapitel 12)
Sockets, fjernmetodekald, databasetilgang
(8/11) Afrunding