Unified Modeling Language Wykład 3 Diagram klas

Slides:



Advertisements
Podobne prezentacje
Projektowanie Aplikacji Komputerowych
Advertisements

Programowanie obiektowe
Związki w UML.
Unified Modeling Language Wykład 4 Przypadki użycia
Projektowanie bazy danych
Modelowanie klas i obiektów
Wzorce.
Zaawansowane metody programowania – Wykład V
Obiektowe metody projektowania systemów Design Patterns STRATEGY.
Kamil Łącki Dominik Strzelichowski
Budowa i integracja systemów informacyjnych
Co UML może zrobić dla Twojego projektu?
Bartosz Walter Prowadzący: Bartosz Walter
Katedra Mikroelektroniki i Technik Informatycznych Politechniki Łódzkiej UML- Unified Modeling Language Ujednolicony Język Modelowania UML jest standardowym.
Dziedziczenie i jego rodzaje
C++ wykład 2 ( ) Klasy i obiekty.
Pakiety i ATD 1 Definicja. Pakietem albo jednostką programową nazywamy grupę logicznie powiązanych elementów, które mogą być typami, podtypami, obiektami.
Unified Modeling Language Wykład 5 Diagram czynności
DIAGRAMY KLAS i obiektów
Diagramy klas w języku UML
Projektowanie i programowanie obiektowe II - Wykład I
Projektowanie i programowanie obiektowe II - Wykład IV
Projektowanie i programowanie obiektowe II - Wykład II
Modele baz danych - spojrzenie na poziom fizyczny
Projektowanie - wprowadzenie
Projektowanie - klasy i związki
Wykład 4 Analiza i projektowanie obiektowe
Wykład 5 UML - Unified Modeling Language
Wykład 3 Analiza i projektowanie strukturalne
Unified Modeling Language graficzny język wizualizacji, specyfikowania, tworzenia i dokumentowania systemów informatycznych.
DIAGRAMY ER 2 (ENTITY-RELATIONSHIP DIAGRAMS 2) Ćwiczenia 2.
Źródła: podręcznikopracował: A. Jędryczkowski.
Dziedziczenie Maciek Mięczakowski
Inicjalizacja i sprzątanie
Programowanie obiektowe Wykład 6 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Dariusz Wardowski.
Projektowanie obiektowe
Związki w UML Do zrobienia jest: -Przerysować jak ktoś ma Visio te dwa diagramy tak żeby podmienić tylko nazwy a reszta Taka sama, -I dodać po jednym zdaniu.
Wybrane zagadnienia relacyjnych baz danych
Programowanie obiektowe – język C++
1 Analiza obiektowa Peter Coad / Edward Yourdon Analiza obiektowa wydawnictwo: Oficyna Wydawnicza READ ME, Warszawa 1994 dr Waldemar Wolski.
Programowanie obiektowe 2013/2014
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Unified Modeling Language - Zunifikowany Język Modelowania
Modelowanie obiektowe Diagramy klas
Programowanie w języku C++
Projektowanie relacyjnych baz danych – postacie normalne
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Programowanie strukturalne i obiektowe C++
Model obiektowy bazy danych
Slajd 1© J.Rumiński Jacek Rumiński  Bazy danych Kontakt: Katedra Inżynierii Biomedycznej, pk. 106, tel.: , fax: ,
Diagram klas Kluczowymi elementami są: klasy (class)
Diagram klas Diagramy klas służą do obrazowania statycznych aspektów projektowanych systemów jako: Projekt struktury logicznej baz danych Projekt składników.
Projektowanie relacyjnych baz danych – diagramy związków encji
Diagram obiektów Diagram obiektów ukazuje elementy i związki z diagramu klas w ustalonej chwili. Diagram obiektów jest grafem złożonym z wierzchołków i.
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Paweł Starzyk Obiektowe metody projektowania systemów
Wzorce Projektowe w JAVA
Programowanie Zaawansowane
Modelowanie model związków encji
Wstęp do systemów informatycznych Diagramy klas. Odbiór świata  Myślenie o dziedzinie problemu powinno być możliwie zbliżone do myślenia o systemie 
E. Stemposz. UML i Analiza Obiektowa, Wykład 3, Slajd 1/18 Wykład 3 Model obiektowy (1) dr inż. Ewa Stemposz
Implementacja asocjacji (z atrybutami i bez) przy użyciu: referencji (kolekcji referencji) tablic asocjacyjnych przygotował: Kamil Kowalczyk.
Inżynieria systemów informacyjnych
Programowanie Obiektowe – Wykład 2
PGO Dziedziczenie Michail Mokkas.
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

Unified Modeling Language Wykład 3 Diagram klas UML Unified Modeling Language Wykład 3 Diagram klas

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

WSM dr Marek Szepski

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

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

Klasy WSM dr Marek Szepski

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

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

Nazwa Role Nawigacja WSM dr Marek Szepski

WSM dr Marek Szepski

Liczeb- ność WSM dr Marek Szepski

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

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

WSM dr Marek Szepski

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

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

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

Atrybuty WSM dr Marek Szepski

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

Oper- acje WSM dr Marek Szepski

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

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

Zobowiązania WSM dr Marek Szepski

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

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

Klasa asocjacyjna WSM dr Marek Szepski

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

Dziedziczenie WSM dr Marek Szepski

WSM dr Marek Szepski

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

WSM dr Marek Szepski

WSM dr Marek Szepski

WSM dr Marek Szepski

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

Przykłady diagramów klas WSM dr Marek Szepski

WSM dr Marek Szepski

WSM dr Marek Szepski

WSM dr Marek Szepski

WSM dr Marek Szepski

WSM dr Marek Szepski

WSM dr Marek Szepski

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

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

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

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