Objektorienteret programmering
foråret 2001
ved
Keld Helsgaun
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.
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
- er fortrolig med de vigtigste begreber inden for objektorienteret programmering, herunder indkapsling, nedarvning og polymorfi, og kan anvende disse i praksis
- kan anvende det objektorienterede programmeringssprogs forskellige faciliteter, bl.a. til realisering af grafiske brugergrænseflader, netværksbaserede programmer og programmer med samtidighed
- kan anvende et diagrammeringsværktøj til at visualisere programmer
Indhold
- Klassebegrebet
- Modularisering
- Designmønstre
- Fejlhåndtering
- Indlæsning og udskrivning
- Grafiske brugergrænseflader
- Samtidighed
- Netværksprogrammering
Lærebog
Som lærebog anvendes
Som supplerende litteratur anbefales:
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.
Til stofgennemgang er afsat 10 forelæsningsgange. Forelæsningerne finder sted i møderum 1.B i hus 01 på torsdage fra 930 til 1200. Første forelæsningsgang er torsdag den 8. februar. Sidste forelæsningsgang er torsdag den 19. april.
Øvelserne finder sted i datastuen i hus 42.1 på torsdage fra 1300 til 1530. Første øvelsesgang er torsdag den 7. februar. Sidste øvelsesgang er torsdag den 19. april.
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.
Eksamen
Afleveringsopgave. Der skal udarbejdes en rapport, der beskriver løsningen af en af de(n) studerende valgt programmeringsopgave. Opgavens formulering skal være godkendt af kursuslæreren. Det forventes, at opgaven løses i løbet af kursusperioden.
Underviser
Keld Helsgaun, lektor
Deltagere
Yderligere information
- Kursusbeskrivelse
- Slides
- Ugesedler
- Afleveringsopgaven
- Lærebogens eksempler (med kode)
- Opgaveløsninger
- Trykfejl i lærebogen
- API specification for the Java 2 Platform
Nyttigt Javaprogrammel:
- simset (tovejslister): simset.java. simset.jar. Vejledning. Java Documentation.
- class Console (simpel indlæsning fra skærm): Console.java. Java Documentation.
- IO (simpelt input/output): IO.java. IO.jar. Vejledning.
- javaSimulation (en Java-pakke til diskret simulering): javaSimulation.
- JUnit (et framework til afprøving af Java-programmer): JUnit
Projektforslag m.m.:
- Ti forslag til datalogiske projekter inden for kunstig intelligens
- Forslag til datalogiprojekter (38 forslag)
- Projektforslag på modul 2 (slides)
- Om projektarbejdet (slides)
- Vejlederpræsentation (slides)
- Forslag til programmeringsopgaver på modul 1 (slides)