Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałZdzisław Drużyński Został zmieniony 11 lat temu
1
Unified Modeling Language Wykład 3 Diagram klas
UML Unified Modeling Language Wykład 3 Diagram klas
2
Diagram klas Diagram klas to graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków miedzy nimi. WSM dr Marek Szepski
3
WSM dr Marek Szepski
4
Klasa Klasa jest uogólnieniem zbioru obiektów, które mają takie same atrybuty, operacje, związki i znaczenie. WSM dr Marek Szepski
5
Klasy A-nazwa B-nazwa +atrybuty C-nazwa+ operacje D-n+a+o
WSM dr Marek Szepski
6
Klasy WSM dr Marek Szepski
7
Klasa Klasa jest pojęciem ogólnym i składa się z pewnej liczny obiektów. Przykładami klas są: projekty, zespoły, produkty pracy, wymagania, systemy. Klasa definiuje typ obiektu i jego właściwości, w tym cechy strukturalne oraz behawioralne. Cechy strukturalne definiują, co obiekty z danej klasy „wiedzą” (atrybuty i asocjacje). Cechy behawioralne określają co obiekty mogą robić (operacje i metody). Klasy mogą być aktywne. Klasy zawierające zero obiektów nazywamy klasami abstrakcyjnymi. Graficznie klasy są reprezentowane jak na schemacie. WSM dr Marek Szepski
8
Asocjacje Związek klas: Nazwa Role Nawigacja Liczebność Agregacja
WSM dr Marek Szepski
9
Nazwa Role Nawigacja WSM dr Marek Szepski
10
WSM dr Marek Szepski
11
Liczeb- ność WSM dr Marek Szepski
12
Agregacja Związek: całość - część a) całkowita b) częściowa
WSM dr Marek Szepski
13
Agregat – obiekt stanowiący całość Segment – część
W A. Całkowitej części nie mogą istnieć bez agregatu WSM dr Marek Szepski
14
WSM dr Marek Szepski
15
Diagram klas: Konceptualny (analityczny, poziom koncepcyjny)
Implementacyjny – zawiera szczegóły atrybutów, operacji, zobowiązań Do diagramu implementacyjnego dochodzi się w kolejnych krokach dodając szczegóły WSM dr Marek Szepski
16
Widoczność Określa dostępność atrybutów i operacji
+, publiczny, obiekty wszystkich klas maja dostęp -, prywatny, tylko obiekty danej klasy mają dostęp do atrybutów i operacji #, chroniony, dostęp maja obiekty z klas dziedziczących WSM dr Marek Szepski
17
Jeśli nie ma istotnego powodu do atrybuty powinny być prywatne.
Wartości atrybutów są wtedy zmieniane przez operacje, które są publiczne. Aby klasa potomna miała dostęp do atrybutów klasy nadrzędnej musza one być chronione. WSM dr Marek Szepski
18
Atrybuty WSM dr Marek Szepski
19
Składnia atrybutu widoczność nazwa_atrybutu [liczebność uporządkowanie] : typ [= wartość początkowa] widoczność (+ publiczna, - prywatna, # chroniona) nazwa_atrybutu nazwa opisywanego atrybutu liczebność (domyślna = 1; granica_dolna granica_górna) uporządkowanie (unordered, ordered) typ (może być każda klasa; Boolean; Integer; Real; String) wartość początkowa jest opcjonalna i oznacza wartość początkową atrybutu WSM dr Marek Szepski
20
Oper- acje WSM dr Marek Szepski
21
Składnia operacji widoczność nazwa_operacji (lista_ parametrów) : typ_zwracany widoczność (+ publiczna, - prywatna, # chroniona) nazwa_operacji (nazwa opisywanej operacji) lista_parametrów według składni: rodzaj nazwa : typ = wartość_początkowa rodzaj jest opcjonalny, ma wartość domyślną in. Rodzaj może przyjmować wartości in, out, inout typ – jest opcjonalny, nie ma wartości domyślnej – wskazuje typ danych które może zawierać parametr. Typem parametru może być inna klasa lub Boolean, Integer, Real, String wartość_początkowa – jest opcjonalna i oznacza wartość początkową parametru typ_zwracany jest opcjonalny, nie ma wartości domyślnej – wskazuje typ danych zwracanych przez operację. WSM dr Marek Szepski
22
Szczególnymi operacjami są konstruktor i destruktor
Operacje są publiczne Szczególnymi operacjami są konstruktor i destruktor WSM dr Marek Szepski
23
Zobowiązania WSM dr Marek Szepski
24
Nazwy: Poziom implementacyjny NazwaKlasyJakoRzeczownikwLPoj
nazwaAtrybutu nazwaCzynnosciCzasownik Na poziomie koncepcyjnym – nazwy naturalne: liczba sztuk..... WSM dr Marek Szepski
25
Klasa asocjacyjna Opisuje związek między klasami.
Związek może być złożony mieć atrybuty i operacje np.. Pracownik – pracodawca: umowa o pracę Osoba – projekt: harmonogram WSM dr Marek Szepski
26
Klasa asocjacyjna WSM dr Marek Szepski
27
Klasa abstrakcyjna Klasa która nie posiada obiektów nazywana jest klasą abstrakcyjną. Przykładem klasy abstrakcyjnej jest Interfejs (Interface). WSM dr Marek Szepski
28
Dziedziczenie WSM dr Marek Szepski
29
WSM dr Marek Szepski
30
Dziedziczenie Uogólnienie (generalization) to związek pomiędzy dwoma bytami: Ogólnym (przodek) Szczegółowym (potomek) Obiekt bytu szczegółowego może być używany w zastępstwie bytu ogólnego. Jeżeli bytami są klasy to byt ogólny nazywamy nadklasą czyli przodkiem a byt szczegółowy klasą czyli potomkiem. Potomek dziedziczy wszystkie właściwości przodka, a w szczególności jego atrybuty i operacje. WSM dr Marek Szepski
31
WSM dr Marek Szepski
32
WSM dr Marek Szepski
33
WSM dr Marek Szepski
34
Polimorfizm Operacja potomka mająca tą samą sygnaturę co operacja przodka jest ważniejsza (ma pierwszeństwo) od operacji zdefiniowanej dla przodka. Zjawisko to nazywane jest polimorfizmem. WSM dr Marek Szepski
35
Przykłady diagramów klas
WSM dr Marek Szepski
36
WSM dr Marek Szepski
37
WSM dr Marek Szepski
38
WSM dr Marek Szepski
39
WSM dr Marek Szepski
40
WSM dr Marek Szepski
41
WSM dr Marek Szepski
42
Tabela <-> Klasa
Pasywna Jest wzorcem oraz zbiorem obiektów Trwała Musi zawierać atrybuty Atrybuty elementarne Musi posiadać unikalny identyfikator- klucz Aktywna Jest tylko wzorcem obiektów Trwała lub ulotna Są klasy nie posiadające atrybutów Atrybuty elementarne lub złażone Obiekty danej klasy są zawsze rozróżnialne niezależnie od wartości atrybutów WSM dr Marek Szepski
43
Diagram klas -> ERD łatwe przekształcenie:
Zastąp złożone atrybuty dodatkowymi tabelami i pomiń operacje Dodaj klucze główne Dodaj tabele łączące, które zlikwidują związki wiele do wielu Określ klucze obce i związki Przeprowadź normalizację tabel WSM dr Marek Szepski
44
Tworzenie diagramu klas
Analiza obiektowa Karty CRC (class-responsibility-collaboration) Arkusz analizy obiektowej RebeccaWirfs-Brock, Allan McKean:Projektowanie obiektowe, Helion Edward Yourdon, Carl Argila: Analiza obiektowa i projektowanie, WNT WSM dr Marek Szepski
45
Wzorce projektowe Korzystaj z gotowych rozwiązań
Gamma, Helm, Johnson, Vlissides: Wzorce projektowe, WNT- IO Shalloway, Trott: Projektowanie zorientowane obiektowo, wzorce projektowe. Helion WSM dr Marek Szepski
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.