
Diagramy klas to wizualne reprezentacje struktury systemu informatycznego. Używamy ich, żeby pokazać klasy, ich atrybuty (dane) i metody (funkcje), a także relacje między nimi. Są one podstawą modelowania obiektowego i bardzo ważne na sprawdzianie w 8 klasie.
Elementy diagramu klas:
- Klasa: Reprezentuje rodzaj obiektu. Na diagramie to prostokąt podzielony na trzy części:
- Nazwa klasy: Zazwyczaj pisana wielką literą, np. `Samochod`.
- Atrybuty: Określają dane przechowywane przez klasę, np. `kolor: String`, `rokProdukcji: Integer`. Oznacza to, że obiekt `Samochod` będzie miał informacje o swoim kolorze (który jest tekstem) i roku produkcji (który jest liczbą).
- Metody: Określają operacje, które można wykonać na obiekcie, np. `jedz()`, `hamuj()`. To akcje, jakie samochód może wykonać.
- Relacje: Pokazują, jak klasy są ze sobą powiązane. Kilka przykładów:
- Asocjacja: Zwykłe połączenie między klasami. Może mieć nazwy opisujące relację, np. `pracuje w`.
- Agregacja: "Ma-część" – jedna klasa zawiera drugą, ale ta druga może istnieć niezależnie. Na przykład, `Silnik` jest częścią `Samochodu`, ale silnik może istnieć poza samochodem. Oznaczana jest pustym rombem od strony klasy "głównej".
- Kompozycja: Silniejsze "ma-część" – jedna klasa zawiera drugą, a ta druga nie może istnieć niezależnie. Na przykład, `Kierownica` jest częścią `Samochodu` i nie istnieje bez niego. Oznaczana jest pełnym rombem od strony klasy "głównej".
- Dziedziczenie: Klasa dziedziczy atrybuty i metody od innej klasy (klasy bazowej lub rodzica). Oznaczana jest strzałką z pustym trójkątem skierowaną w stronę klasy bazowej. Na przykład, `Autobus` dziedziczy po `Pojazd`.
Jak czytać diagram klas?
Must Read
- Zidentyfikuj klasy: poszukaj prostokątów. Zrozum, co reprezentują (np. `Uczeń`, `Nauczyciel`, `Przedmiot`).
- Sprawdź atrybuty: Dowiedz się, jakie dane przechowuje każda klasa (np. `imię: String`, `nazwisko: String`, `wiek: Integer`).
- Zbadaj metody: Zobacz, jakie operacje można wykonać na obiektach (np. `zapiszSię()`, `wystawOcene()`).
- Analizuj relacje: Zrozum, jak klasy są ze sobą powiązane. Czy to tylko zwykłe połączenie (asocjacja), czy silniejsza zależność (agregacja, kompozycja, dziedziczenie)? Zwróć uwagę na symbole na końcach linii łączących klasy – one wiele mówią!
Przykład:

Mamy klasy `Ksiazka` i `Autor`. `Ksiazka` ma atrybuty `tytul: String` i `liczbaStron: Integer`. `Autor` ma atrybuty `imie: String` i `nazwisko: String`. Pomiędzy nimi jest relacja asocjacji "napisana przez". Jeden autor może napisać wiele książek, a jedna książka może mieć jednego autora (załóżmy uproszczenie). Na diagramie zobaczymy linię łączącą te dwie klasy. Po stronie `Ksiazka` może być cyfra `1`, a po stronie `Autor` `` (gwiazdka), co oznacza "wiele". To znaczy, że książkę napisał *jeden autor, ale autor napisał wiele książek.
Pamiętaj! Ćwiczenie czyni mistrza. Im więcej diagramów klas przeanalizujesz, tym łatwiej będzie Ci je czytać i zrozumieć. Na sprawdzianie skup się na identyfikacji klas, atrybutów, metod i relacji. Zwróć szczególną uwagę na symbole oznaczające relacje – to klucz do sukcesu!