Föreläsningar
Varje vecka består av två “moduler”, vardera bestående av ett övningspass följt av en föreläsning, med laborationspass emellan. På övningen introduceras ett koncept genom uppgifter vi gemensamt diskuterar, och på föreläsningen följs detta upp med de generella principer och mönster som ligger bakom. OBS Kursen börjar med övning!
Tiderna och sal hittar ni på TimeEdit. Observera att innehållet och läsanvisningar av föreläsningar och övningsuppgifter är preliminärt och uppdateras under kursens gång.
OBS: Nedan försöker jag lägga upp lite läshänvisningar i boken. Notera att Skrien går igenom saker i en annan ordning än vi gör, och det kan därför riskera att bli lite upphackat. Överensstämmelsen kommer inte att vara total. Det går utmärkt att läsa boken separat, i Skriens ordning, för att få ett andra perspektiv (men det tillvägagångssättet möjliggör såklart inte att läsa på inför föreläsningar och övningar).
Modul
|
Datum
|
Ämne
|
Övning
|
Föreläsning
|
Läsanvisningar
|
1-1
|
|
Introduktion till Objekt-orientering
|
anteckningar uppgift
|
The Open-Closed Principle (OCP), generella kriterier för ‘bra’ kod, refactoring
|
1; 2.0-2.1; 4.9-4.11; 5.4; 5.7; Appendix B
|
1-2
|
|
Classes, Interfaces, Objects, References
|
anteckningar uppgift
|
Classes vs Interfaces, Objects vs References
|
2.2-2.7; Appendix A
|
2-1
|
|
Dynamic vs static binding och typer
|
anteckningar uppgift
|
Dynamic vs static binding, polymorfism
|
2.8-2.11
|
2-2
|
|
Inheritance, hur och när?
|
anteckningar uppgift
|
Liskov Substitution Principle (LSP), perspektiv på inheritance
|
3
|
3-1
|
|
Subtypning, co- och contra-variance
|
anteckningar uppgift
|
Mer LSP, teori bakom variance
|
Tas inte upp - googla!
|
3-2
|
|
Generics
|
anteckningar uppgift
|
Design för Generics
|
Tas inte upp - googla!
|
4-1
|
|
Dependency reduction
|
anteckningar uppgift
|
High cohesion - low coupling, Dependency Inversion Principle (DIP), Interface Segregation Principle (ISP)
|
5.1-5.2, 5.8
|
4-2
|
|
Separation of responsibility
|
anteckningar uppgift
|
Single Responsibility Principle (SRP), Information expert
|
4.0-4.3; 5.3-5.5, 5.7 (igen)
|
5-1
|
|
Introduktion till design patterns
|
anteckningar uppgift
|
Principer kring design patterns, abstraktion
|
7.0; 8.7, …
|
5-2
|
|
Model-View-Controller
|
anteckningar uppgift
|
Principer kring MVC och dess underliggande design patterns
|
8.0-8.4
|
6-1
|
|
State och immutability
|
anteckningar uppgift
|
Principer kring state och immutability, singleton
|
5.6; 7.2; 8.6
|
6-2
|
|
Olika design patterns
|
anteckningar uppgift
|
Design patterns galore
|
…
|
7-1
|
|
Trådar
|
anteckningar uppgift
|
Trådar och trådsäkerhet
|
Googla
|
7-2
|
|
Sammanfattning
|
anteckningar uppgift
|
Sammanfattning och tentamensinformation
|
…
|