UU |
IT |
OOP med Java våren 25
Anteckningar
Del 1. Introduktion
Läs i Skansholm: kapitel 1.
- Introduktion till kursen
- Allmänt om OOP och Java
- OOP: exempel
Övningsuppgifter.
Del 2. Java
Läs i Skansholm, kapitel 2.
- Allmänt om Java
-
Primitiva typer och arrayer
- Strängar
- Lite om klasser
- Referenssemantik
- Konstruktorer och annat
- Lite om kodningsstandard (kodkonventioner).
- Statiska och dynamiska typer.
För dig som är van vid script-språk.
Övningsuppgifter.
Del 3. Klasser och arv
Skansholm, kapitel 2 och 10.1-10.7
- Klasser och arv
- Polymorfi
- Overriding
- Abstrakta klasser
- Lite om god OOP
Övningsuppgifter.
Del 4. Mer om klasser
Skansholm, kapitel 3, 10.8 (interface) och 10.10 (klassen objekt). I
de senaste upplagorna av Skansholms bok har avsnttet om klassen objekt nummer 10.12.
(Jag rekommenderar att du löser inlämningsuppgift 2 innan du läser
detta avsnitt.)
- Interface
- Mer om klasser
- Omslagsklasser
Övningsuppgifter.
Del 5. Samlingar
Skansholm, kapitel 17. (I den åttonde upplagan av boken tar 17.8 upp
Pipelines. Detta ingår inte i kursen.) Se även
Java
tutorial: Collections
Äldre upplagor av Skansholms bok beskriver
samlingar i kapitel 19.
- Generiska klasser
- Samlingar
- Exempel: Hitta duplicerade ord
- Exempel: Räkna antal förekomster
- Exempel: Permutationer
Övningsuppgifter.
Programexempel.
Del 6. Swing
Skansholm, Kapitel 6-8. Se även
- Swing
-
Att rita bilder i Swing
Övningsuppgifter.
Programexempel.
Del 7. Mer om Swing
-
Att skriva interaktiva program i Swing
-
Interaktion med många knappar
Exempel med inre klasser och anonyma klasser.
-
Ett enkelt ritprogram i Swing
-
Lite om Swing och trådar.
Övningsuppgifter.
Programexempel, interaktion.
Programexempel, Swing och trådar.
Del 8. Undantag och IO.
Skansholm: Kapitel 11, 16.
-
Undantag
-
Allmänt om felhantering
-
Att läsa och skriva i ett program
-
Orientering om Unicode
Övningsuppgifter.
Programexempel.
Del 9. Objektorienterad utveckling
Skansholm: Kapitel 4.
I det här avsnittet tar jag upp olika metoder för objektorienterad
utveckling.
Jag utgår från den traditionella utvecklingsmodellen
(vattenfallsmodellen), och i samband med den beskriver jag även
UML. Jag kommer även att ta upp två andra modeller för utveckling;
extreme programming (XP) och iterative development (ID).
-
Vattenfallsmodellen
-
UML
-
Kritik av vattenfallsmodellen
-
Iterative design
-
Extreme programming
Dessutom diskuterar jag ett par koncept som ligger lite utanför kursen
men ändå är värda att nämnas.
- Unit testing med JUnit
- Versionshantering
Övningsuppgifter.
Del 10. Mer om objektorienterad programmering.
- Implementation av
multipel dispatch.
- Implementation av multipelt arv i Java.
- A simple database.
Övningsuppgifter.
Programexempel.
svenolof@it.uu.se