---
title: Modelowanie UML dla języka C++ z wykorzystaniem narzędzia UModel
date: 2019-08-21
categories:
  - software
  - tools
tags:
  - c
  - software-modeling
  - uml
  - uml-tool
  - umodel
description: Altova UModel konkuruje z nawet najbardziej zaawansowanymi narzędziami do modelowania UML, oferując kompleksowe wsparcie dla inżynierii kodu, umożliwiając tworzenie kodu w C++ bezpośrednio z diagramów UML.
---
Status: #blog

Tags:  #c #software-modeling #uml #uml-tool #umodel

Categories: [uml](/blog/pl/category/uml.md) | [development](/blog/pl/category/development.md)
# Modelowanie UML dla języka C++ z wykorzystaniem narzędzia UModel

C++ to jeden z najpotężniejszych i najbardziej wydajnych języków programowania, będący standardem w dziedzinie obliczeń o wysokiej wydajności, aplikacji serwerowych oraz złożonych architektur, które wymagają najbardziej zaawansowanych konstrukcji językowych. Unified Modeling Language™ (UML®) to standard służący do projektowania, wizualizacji i dokumentowania modeli systemów programowych, zaimplementowanych w C++ oraz w innych językach programowania.

Altova UModel konkuruje nawet z najbardziej zaawansowanymi [Zaawansowane modelowanie UML](https://www.altova.com/pl/umodel) Narzędzia oferujące kompleksowe wsparcie inżynierii kodu w modelowaniu UML dla języka C++. UModel obejmuje: generowanie kodu C++ na podstawie diagramów UML, odtwarzanie kodu C++ w celu stworzenia modeli UML oraz dwukierunkową inżynierię, umożliwiającą aktualizację zarówno kodu C++, jak i modeli UML.

Transformacja modeli pozwala również programistom konwertować istniejący model UML, zaprojektowany dla języków Java, C# lub Visual Basic, aby umożliwić jego wykorzystanie w programowaniu w C++.

[![](/blog/images/BLOG_State_machine02.png)](BLOG_State_machine02.png)

<!--more-->

Programiści mogą rozpocząć pracę z UML dla C++ w programie UModel na kilka sposobów:

- Utwórz nowy projekt UModel i wybierz C++ jako język docelowy
- Importuj kod z istniejącego projektu C++ w celu utworzenia nowego modelu UML
- Przekształcenie istniejącego diagramu UML na kod C++
- Otwórz przykładowy projekt C++, który jest dołączony do programu UModel

[UModel](https://www.altova.com/pl/umodel) zawiera przykładowy projekt bankowości internetowej, zaimplementowany dla języków Java lub C#, który można traktować jako model procesu biznesowego, a nawet posiada wersję w języku SysML. Przekształciliśmy wersję w języku C# tak, aby działała w C++, i zapisaliśmy wynik jako nowy projekt.

Projekt bankowy obejmuje hierarchię klas dla różnych typów kont bankowych, jak widać na tym diagramie klas z przekształconego projektu:

[![Modelowanie UML dla oryginalnego diagramu klas w C++](/blog/images/UML-class-diagram.png)](UML-class-diagram.png)

Programista może zostać przydzielony do rozbudowy aplikacji bankowej, aby umożliwiła ona obsługę kont maklerskich. Nową klasę można łatwo dodać bezpośrednio do istniejącego schematu, jak pokazano poniżej. (Niektóre istniejące klasy zostały zwinięte, aby zaoszczędzić miejsce.)

[![Modelowanie UML dla diagramu klas w C++, zaktualizowanego w projekcie UModel](/blog/images/revised-UML-class-diagram.png)](revised-UML-class-diagram.png)

Na powyższych diagramach klas, ikony UModel graficznie wskazują poziom dostępu do właściwości i operacji, które mogą być chronione, publiczne lub prywatne. Jeśli wolisz, możesz również używać tradycyjnych symboli UML: #, +, itp.

[![Tradycyjny diagram klas UML w projekcie do modelowania UML dla języka C++](/blog/images/traditional-style-UML-class.png)](traditional-style-UML-class.png)

Naszym jedynym pozostałym zadaniem jest przypisanie nazwy pliku kodu w oknie właściwości dla nowej klasy "BrokerageAccount":

Generowanie kodu rozpoczyna się z głównego menu projektu, otwierając okno dialogowe, w którym można ustawić kilka preferencji.

[![Opcje generowania kodu UModel w modelowaniu UML dla projektów C++](/blog/images/generate-code.png)](generate-code.png)

UModel może generować kod C++ na podstawie diagramów UML, kompatybilny z wersjami C++ 98, C++ 11 lub C++ 14, oraz tworzyć projekty dla środowiska Visual Studio w wersjach od 6.0 do Visual Studio 2017. Okno komunikatu wyświetli informację o pomyślnym wygenerowaniu kodu. Poniżej znajduje się fragment kodu źródłowego w C++ dla naszej nowej klasy:

[![UModel generuje kod źródłowy do modelowania UML dla języka C++](/blog/images/code-file.png)](code-file.png)

Plik pomocy programu UModel zawiera szczegółowe instrukcje dotyczące konfiguracji własnego projektu UML w C++. Dodatkowo, jeśli chcesz od razu przejść do bardziej złożonego przykładu, dołączony jest model UML dla rzeczywistego systemu sterowania ogrzewaniem/klimatyzacją, zaimplementowanego w C++.

[![Diagram stanów w notacji UML dla projektu przykładu w C++](/blog/images/UModel-aircondition.png)](UModel-aircondition.png)

UModel to przystępne cenowo narzędzie UML, które łączy bogaty interfejs wizualny z zaawansowanymi funkcjami, w tym modelowaniem baz danych i XML, wymianą modeli XMI, wsparciem dla modelowania procesów biznesowych, generowaniem dokumentacji, współpracą zespołową i wieloma innymi, oferując zespołom programistycznym potężne narzędzie do rozwiązywania współczesnych wyzwań projektowych.

[Pobierz bezpłatną wersję próbną](https://www.altova.com/pl/umodel/download), aby rozpocząć swój własny projekt w UML dla C++!
