Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

UML Unified Modeling Language Wykład 3 Diagram klas.

Podobne prezentacje


Prezentacja na temat: "UML Unified Modeling Language Wykład 3 Diagram klas."— Zapis prezentacji:

1 UML Unified Modeling Language Wykład 3 Diagram klas

2 WSM dr Marek Szepski2 Diagram klas Diagram klas to graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków miedzy nimi.

3 WSM dr Marek Szepski3

4 4 Klasa Klasa jest uogólnieniem zbioru obiektów, które mają takie same atrybuty, operacje, związki i znaczenie.

5 WSM dr Marek Szepski5 Klasy A-nazwa B-nazwa +atrybuty C-nazwa+ operacje D-n+a+o

6 WSM dr Marek Szepski6 Klasy

7 WSM dr Marek Szepski7 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.

8 WSM dr Marek Szepski8 Asocjacje Związek klas: Nazwa Role Nawigacja Liczebność Agregacja

9 WSM dr Marek Szepski9 Nazwa Role Nawigacja

10 WSM dr Marek Szepski10

11 WSM dr Marek Szepski11 Liczeb- ność

12 WSM dr Marek Szepski12 Agregacja Związek: całość - część a) całkowita b) częściowa

13 WSM dr Marek Szepski13 Agregat – obiekt stanowiący całość Segment – część W A. Całkowitej części nie mogą istnieć bez agregatu

14 WSM dr Marek Szepski14

15 WSM dr Marek Szepski15 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

16 WSM dr Marek Szepski16 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

17 WSM dr Marek Szepski17 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.

18 WSM dr Marek Szepski18 Atrybuty

19 WSM dr Marek Szepski19 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

20 WSM dr Marek Szepski20 Oper- acje

21 WSM dr Marek Szepski21 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ę.

22 WSM dr Marek Szepski22 Operacje są publiczne Szczególnymi operacjami są konstruktor i destruktor

23 WSM dr Marek Szepski23 Zobowiązania

24 WSM dr Marek Szepski24 Nazwy: Poziom implementacyjny NazwaKlasyJakoRzeczownikwLPoj nazwaAtrybutu nazwaCzynnosciCzasownik Na poziomie koncepcyjnym – nazwy naturalne: liczba sztuk.....

25 WSM dr Marek Szepski25 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

26 WSM dr Marek Szepski26 Klasa asocjacyjna

27 WSM dr Marek Szepski27 Klasa abstrakcyjna Klasa która nie posiada obiektów nazywana jest klasą abstrakcyjną. Przykładem klasy abstrakcyjnej jest Interfejs (Interface).

28 WSM dr Marek Szepski28 Dziedziczenie

29 WSM dr Marek Szepski29

30 WSM dr Marek Szepski30 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.

31 WSM dr Marek Szepski31

32 WSM dr Marek Szepski32

33 WSM dr Marek Szepski33

34 WSM dr Marek Szepski34 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.

35 WSM dr Marek Szepski35 Przykłady diagramów klas

36 WSM dr Marek Szepski36

37 WSM dr Marek Szepski37

38 WSM dr Marek Szepski38

39 WSM dr Marek Szepski39

40 WSM dr Marek Szepski40

41 WSM dr Marek Szepski41

42 WSM dr Marek Szepski42 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

43 WSM dr Marek Szepski43 Diagram klas -> ERD łatwe przekształcenie: 1. Zastąp złożone atrybuty dodatkowymi tabelami i pomiń operacje 2. Dodaj klucze główne 3. Dodaj tabele łączące, które zlikwidują związki wiele do wielu 4. Określ klucze obce i związki 5. Przeprowadź normalizację tabel

44 WSM dr Marek Szepski44 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

45 WSM dr Marek Szepski45 Wzorce projektowe Korzystaj z gotowych rozwiązań Gamma, Helm, Johnson, Vlissides: Wzorce projektowe, WNT- IO Shalloway, Trott: Projektowanie zorientowane obiektowo, wzorce projektowe. Helion


Pobierz ppt "UML Unified Modeling Language Wykład 3 Diagram klas."

Podobne prezentacje


Reklamy Google