Samouczek dotyczący diagramów klas UML z przykładami

Spisie treści:

Anonim

Co to jest klasa?

Klasa to plan używany do tworzenia obiektu. Klasa określa, co może zrobić obiekt.

Co to jest diagram klas?

DIAGRAM KLAS UML przedstawia przegląd systemu oprogramowania poprzez wyświetlanie klas, atrybutów, operacji i ich relacji. Ten diagram zawiera nazwę klasy, atrybuty i działanie w oddzielnych wyznaczonych przedziałach.

Diagram klas definiuje typy obiektów w systemie i różne typy relacji, które istnieją między nimi. Daje ogólny widok aplikacji. Ta metoda modelowania może działać z prawie wszystkimi metodami zorientowanymi obiektowo. Klasa może odnosić się do innej klasy. Klasa może mieć swoje obiekty lub dziedziczyć po innych klasach.

Diagram klas pomaga w tworzeniu kodu do tworzenia aplikacji.

W tym samouczku dowiesz się:

  • Co to jest klasa?
  • Co to jest diagram klas?
  • Korzyści z diagramu klasowego
  • Podstawowe elementy diagramu klas A UML
    • Nazwa klasy
    • Atrybuty:
    • Relacje
  • Agregacja a kompozycja
  • Klasy abstrakcyjne
  • Przykład diagramu klas UML:
  • Diagram klas w cyklu życia oprogramowania:
  • Najlepsze praktyki projektowania diagramu klas

Korzyści z diagramu klasowego

  • Diagram klas Ilustruje modele danych nawet dla bardzo złożonych systemów informatycznych
  • Zawiera przegląd struktury aplikacji przed przestudiowaniem rzeczywistego kodu. Może to łatwo skrócić czas konserwacji
  • Pomaga w lepszym zrozumieniu ogólnych schematów aplikacji.
  • Umożliwia rysowanie szczegółowych wykresów, które podkreślają kod wymagany do zaprogramowania
  • Pomocne dla programistów i innych interesariuszy.

Podstawowe elementy diagramu klas A UML

Podstawowe elementy diagramu klas UML to:

  1. Nazwa klasy
  2. Atrybuty
  3. Operacje

Nazwa klasy

Nazwa klasy jest potrzebna tylko w graficznej reprezentacji klasy. Pojawia się w najwyższej komorze. Klasa to plan obiektu, który może mieć te same relacje, atrybuty, operacje i semantykę. Klasa jest renderowana jako prostokąt, w tym jej nazwa, atrybuty i operacje w oddzielnych przedziałach.

Podczas reprezentowania klasy należy przestrzegać następujących zasad:

  1. Nazwa klasy powinna zawsze zaczynać się wielką literą.
  2. Nazwa klasy powinna zawsze znajdować się na środku pierwszego przedziału.
  3. Nazwa klasy powinna być zawsze zapisana pogrubioną czcionką .
  4. Abstrakcyjna nazwa klasy powinna być zapisana kursywą.

Atrybuty:

Atrybut jest nazwaną właściwością klasy, która opisuje modelowany obiekt. W diagramie klas ten komponent jest umieszczony tuż pod przedziałem z nazwami.

Atrybut pochodny jest obliczany na podstawie innych atrybutów. Na przykład wiek ucznia można łatwo obliczyć na podstawie jego daty urodzenia.

Cechy atrybutów

  • Atrybuty są generalnie zapisywane wraz ze współczynnikiem widoczności.
  • Publiczny, prywatny, chroniony i pakiet to cztery widoczności oznaczone odpowiednio znakami +, -, # lub ~.
  • Widoczność opisuje dostępność atrybutu klasy.
  • Atrybuty muszą mieć zrozumiałą nazwę, opisującą ich użycie w klasie.

Relacje

W UML występują głównie trzy rodzaje relacji:

  1. Zależności
  2. Uogólnienia
  3. Wspomnienia

Zależność

Zależność oznacza relację między dwiema lub więcej klasami, w której zmiana jednej może wymusić zmiany w drugiej. Jednak zawsze będzie tworzyło słabszą relację. Zależność wskazuje, że jedna klasa zależy od drugiej.

W poniższym przykładzie Student jest zależny od College

Uogólnienie:

Uogólnienie pomaga połączyć podklasę z jej nadklasą. Podklasa jest dziedziczona z jej nadklasy. Relacji uogólnienia nie można używać do modelowania implementacji interfejsu. Diagram klas umożliwia dziedziczenie z wielu nadklas.

W tym przykładzie klasa Student jest uogólniona z klasy Person.

Stowarzyszenie:

Ten rodzaj relacji reprezentuje statyczne relacje między klasami A i B. Na przykład; pracownik pracuje dla organizacji.

Oto kilka zasad asocjacji:

  • Skojarzenie to głównie czasownik lub fraza czasownikowa, rzeczownik lub fraza rzeczownikowa.
  • Powinien być nazwany, aby wskazać rolę, jaką odgrywa klasa dołączona na końcu ścieżki skojarzenia.
  • Obowiązkowe dla skojarzeń refleksyjnych

W tym przykładzie pokazano związek między studentem a uczelnią, którym jest nauka.

Wielość

Wielość to czynnik powiązany z atrybutem. Określa, ile wystąpień atrybutów jest tworzonych podczas inicjowania klasy. Jeśli liczebność nie jest określona, ​​domyślnie traktowana jest jako liczność domyślna.

Powiedzmy, że na jednej uczelni jest 100 studentów. Kolegium może mieć wielu studentów.

Zbiór

Agregacja to specjalny typ asocjacji, który modeluje cało-częściową relację między agregatem a jego częściami.

Na przykład klasowa szkoła wyższa składa się z jednego lub kilku uczniów. W sumie zawarte klasy nigdy nie są całkowicie zależne od cyklu życia kontenera. Tutaj klasa college'u pozostanie, nawet jeśli student nie będzie dostępny.

Kompozycja:

Kompozycja jest szczególnym typem agregacji, który oznacza silną własność między dwiema klasami, gdy jedna klasa jest częścią innej klasy.

Na przykład, jeśli uczelnia składa się z klas studenta. Kolegium może pomieścić wielu studentów, podczas gdy każdy student należy tylko do jednej uczelni. Tak więc, jeśli uczelnia nie funkcjonuje, wszyscy studenci również są usuwani.

Agregacja a kompozycja

Zbiór

Kompozycja

Agregacja wskazuje na związek, w którym dziecko może istnieć niezależnie od swojej klasy nadrzędnej. Przykład: samochód (rodzic) i samochód (dziecko). Tak więc, jeśli usuniesz samochód, samochód podrzędny nadal istnieje.

Relacja wyświetlania kompozycji, w której dziecko nigdy nie będzie istnieć niezależnie od rodzica. Przykład: Dom (rodzic) i Pokój (dziecko). Pokoje nigdy nie zostaną rozdzielone na dom.

Klasy abstrakcyjne

Jest to klasa z prototypem operacji, ale nie implementacją. Możliwe jest również posiadanie klasy abstrakcyjnej bez zadeklarowanych w niej operacji. Abstrakt jest przydatny do identyfikowania funkcji w klasach. Rozważmy przykład klasy abstrakcyjnej. Załóżmy, że mamy klasę abstrakcyjną wywoływaną jako ruch z zadeklarowaną w niej metodą lub operacją. Metoda zadeklarowana wewnątrz klasy abstrakcyjnej nazywa się move () .

Ta metoda klasy abstrakcyjnej może być używana przez dowolny obiekt, taki jak samochód, zwierzę, robot itp. Do zmiany aktualnej pozycji. Użycie tej metody klasy abstrakcyjnej z obiektem jest efektywne, ponieważ nie ma implementacji dla danej funkcji. Możemy to wykorzystać w dowolny sposób do wielu obiektów.

W języku UML klasa abstrakcyjna ma taką samą notację jak klasa. Jedyna różnica między klasą a klasą abstrakcyjną polega na tym, że nazwa klasy jest zapisana wyłącznie kursywą.

Nie można zainicjować ani utworzyć wystąpienia klasy abstrakcyjnej.

Notacja klasy abstrakcyjnej

W powyższym notacji klas abstrakcyjnych istnieje jedyna metoda abstrakcyjna, która może być używana przez wiele obiektów klas.

Przykład diagramu klas UML

Tworzenie diagramu klas jest prostym procesem. Nie wymaga wielu szczegółów technicznych. Oto przykład:

System bankomatów jest bardzo prosty, ponieważ klienci muszą nacisnąć kilka przycisków, aby otrzymać gotówkę. Jednak istnieje wiele warstw zabezpieczeń, które musi przejść każdy system ATM. Pomaga to zapobiegać oszustwom i przekazywać informacje gotówkowe lub potrzebne klientom bankowym.

Poniżej podano przykład diagramu klas UML:

Diagram klas w cyklu życia oprogramowania

Diagramy klas mogą być używane na różnych etapach tworzenia oprogramowania. Pomaga w modelowaniu diagramów klas w trzech różnych perspektywach.

1. Perspektywa pojęciowa: Diagramy koncepcyjne opisują rzeczy w prawdziwym świecie. Powinieneś narysować diagram przedstawiający koncepcje w badanej dziedzinie. Te pojęcia odnoszą się do klasy i są zawsze niezależne od języka.

2. Perspektywa specyfikacji: Perspektywa specyfikacji opisuje abstrakcje oprogramowania lub komponenty ze specyfikacjami i interfejsami. Nie zobowiązuje jednak do konkretnej realizacji.

3. Perspektywa implementacji: ten typ diagramów klas jest używany do implementacji w określonym języku lub aplikacji. Perspektywa implementacji, wykorzystanie do implementacji oprogramowania.

Najlepsze praktyki projektowania diagramu klas

Diagramy klas to najważniejsze diagramy UML używane do tworzenia aplikacji. Istnieje wiele właściwości, które należy wziąć pod uwagę podczas rysowania diagramu klas. Reprezentują różne aspekty aplikacji.

Oto kilka punktów, o których należy pamiętać podczas rysowania diagramu klas:

  • Nazwa nadana diagramowi klas musi mieć znaczenie. Ponadto powinien opisywać rzeczywisty aspekt systemu.
  • Z wyprzedzeniem należy określić związek między każdym elementem.
  • Należy określić odpowiedzialność za każdą klasę.
  • Dla każdej klasy należy określić minimalną liczbę właściwości. Dlatego niepożądane właściwości mogą łatwo skomplikować diagram.
  • Uwagi użytkownika powinny być dołączone zawsze, gdy trzeba zdefiniować jakiś aspekt diagramu. Na końcu rysunku musi być zrozumiały dla zespołu programistów.
  • Na koniec, przed utworzeniem ostatecznej wersji, schemat należy narysować na zwykłym papierze. Ponadto należy go przerobić, aż będzie gotowy do ostatecznego złożenia.

Wniosek

  • UML to standardowy język do określania, projektowania i wizualizacji artefaktów systemów oprogramowania
  • Klasa to plan obiektu
  • Diagram klas opisuje typy obiektów w systemie i różne rodzaje relacji, które między nimi istnieją
  • Umożliwia analizę i projektowanie statycznego widoku aplikacji
  • Diagramy klas to najważniejsze diagramy UML używane do tworzenia aplikacji
  • Podstawowe elementy diagramu klas UML to 1) Klasa 2) Atrybuty 3) Relacje
  • Diagram klas zawiera omówienie struktury aplikacji przed przestudiowaniem rzeczywistego kodu. Z pewnością skraca czas konserwacji
  • Diagram klas jest przydatny do mapowania języków programowania zorientowanych obiektowo, takich jak Java, C ++, Ruby, Python itp.