Objekt-orienteret Programmering
Lektion 1


EmneIntroduktion til Objekt-orienteret programmering

Objekt-orienteret programmering er anderledes end sædvanlig programmering i Pascal eller C. Det er derfor vigtigt at forstå præmisserne for 'den nye form' for programmering. I denne lektion vil vi introducere nogle af de helt fundamentale ideer og begreber i objekt-orienteret programmering: Dataabstraktion, indkapsling, og synlighedskontrol, og vi vil gennem et eksempel studere hvordan disse ideer påvirker opbygningen af et program. Denne lektion knytter sig ikke til noget bestemt programmeringssprog.

DatoTorsdag 6.9.2001

ForelæsningKlokken 10.15 - 12.00 i lokale B3-104

LitteraturKapitel 2 og 3 i Barnes

Læsevejledning: Som allerede noteret på introduktionssiden til kurset er der ikke en klar overensstemmelse mellem stoffet's gennemgang i lærebogen og i forelæsningsnoterne. Barnes er reelt den tredie lærebog, der anvendes sammen med forelæsningsnoterne. Så man bør opfatte forelæsninger og noter som én vej gennem stoffet, og lærebogen som en anden vej.

Jeg har dog forud for E01 bestræbt mig på at holde forelæsningerne i en rækkefølge, så lærebogen bliver anvendt rimeligt sekventielt. Dette er overholdt til og med kapitel 9, hvorefter vi insisterer på at dække nedarvning, interfaces og abstrakte klasser. Efter dette dækkes kapitlerne fra 10 og frem i et passende udvalg.

Til denne gang læser vi kapitel 2 og 3 i Barnes. (Kapitel 1 er basalt materiale om computere, som hjemmehører på basisuddannelsen. Orienter dig i kapitlet efter behov og lyst). Kapitel 2 og 3 knytter sig ganske meget til Java. Forelæsningen introducerer og - ikke mindst - motiverer objekt-orienteret programmering. Denne første forelæsning knytter sig ikke til noget bestemt programmeringssprog. På trods af dette er der et pænt overlap mellem bog og forelæsning, idet begge dele introducerer den objekt-orienterede tankegang.

Jeg forventer ikke at alle læser kapitlerne fra ende til anden. Specielt kan der være forskel på i hvor stor deltalje man vil studere bogens mange eksempler (ala 3.8).

ØvelserØvelserne til denne lektion afholdes torsdag 13.9.2001 klokken 08.15 - 10.00

Opgave 1.1 (Fænomener kontra begreber)
Opgave 1.2 (Litteraturbegreber)
Opgave 1.3 (Tidsbegreber)
Opgave 2.1 og 2.2 side 30-31 i Barnes
Opgave 3.2 side 43 i Barnes

Alle opgaver fra kapitel 1 i noterne samlet på én side

Opgaverne fra noterne handler om begrebsmodellering. Opgaverne fra lærebogen er indledende armbøjninger med Java.

Der vil ofte være flere opgaver end I kan nå at løse ved øvelserne. Dette er et bevidst valg, dels så der er noget at vælge imellem, dels for at sikre at der er tilstrækkelige udfordringer - også for de hurtige. Rækkefølgen af opgaverne, som angivet ovenfor, er mit forslag til prioritering (de vigtiste først). Sådan vil det også være i fremtidige lektioner.

ReferencerForelæsningsnoter
Programmer fra kapitel 2 i Barnes
Programmer fra kapitel 3 i Barnes

Kapitler i forelæsningsnoterne vil ofte blive modificeret kort tid op mod de forelæsning, hvortil de er knyttede. Til forskel fra lærebogen er noterne altså en 'dynamisk størrelse', som hele tiden ændrer sig en smule. Større ændringer vil blive annonceret på disse WWW sider eller ved forelæsningen.

DiverseBemærk at øvelsestiden ikke udnyttes ved første lektion. Kurset starter med forelæsningen Torsdag 6.9 kl. 10.15.


Kurt Nørmark

Genereret: Mandag 17. December 2001, 10:36:32
Genereret for: cs-unix

OOP hjemmeside     |     D3 hjemmeside     |     OMSWING hjemmeside
Dat1/Inf1 hjemmeside
Forelæsningsnoter     |     JDK API     |     JDK Tools     |     Java Tutorial
Java på Sun     |     Kurt Nørmark