Sdílet prostřednictvím


Diagramy tříd jazyka UML: pokyny

V Visual Studio Ultimate, můžete použít diagramu UML třídy popisující typy dat a jejich relace odděleně od jejich provádění.Diagram lze zaměřit na logické aspekty třídy, namísto jejich provádění.

Vytvoření diagramu třídy UML na Architektura nabídce zvolte Nový Diagram.

[!POZNÁMKA]

Toto téma je třída diagramy UML.Existuje jiný druh diagram třídy, které můžete vytvořit a použít kód programu vizualizace.Viz navrhování a zobrazení třídy a typy.

V tomto tématu

Pomocí třídy UML, diagramy

Základní kroky pro kreslení diagramů tříd

Pomocí třídy, rozhraní a vyčíslení

Atributy a operace

Kreslení a pomocí přidružení

Dědičnost

Typy šablon

Definice jmenného prostoru s balíčky

Generování kódu z diagramy tříd UML

Pomocí třídy UML, diagramy

Třída diagramu UML můžete použít pro různé účely:

  • Poskytnout provádění nezávislých popis typů používaných v systému a předávány mezi jeho součástí.

    Typ objednávky jídlo může být například provádí v .net kódu ve vrstvě obchodní XML na rozhraní mezi součástmi v SQL v databázi a ve formátu HTML v uživatelském rozhraní.Ačkoli jsou tyto implementace různých podrobně, vztah mezi pořadí moučka a jiné typy nabídky a platby, je vždy stejný.Diagram třídy UML umožňuje diskutovat tyto vztahy nezávisle implementace.

  • Glosář termínů pro komunikaci mezi aplikací a jeho uživatelů a v popisech potřebám uživatelů vyjasnit.Viz téma Modelování požadavků uživatelů.

    Například zvažte články uživatele, použijte případů nebo jiné požadavky popis aplikace restaurace.V popisu by najít podmínky jako nabídky, objednávky, moučka, ceny, platby atd.Můžete kreslit diagramu UML třídy, která definuje vztahy mezi těmito podmínkami.Tím snížíte riziko nesrovnalostí v popisech požadavků a uživatelské rozhraní a v dokumentech nápovědy.

Dd409416.collapse_all(cs-cz,VS.110).gifVztah k jiným diagramy

Třída diagramu UML je obvykle zakresleno s jinými modelování diagramy, které popisují typy, které používají.V každém případě není implikován fyzickou reprezentací typy jakýkoli diagramy.

Pokud jste nakreslili:

Pomocí diagramu UML třídy popisují:

Diagram činnosti

Typ dat procházející uzlu typu objektu.

Typy vstupní a výstupní spojky a uzly parametr aktivity.

Viz téma Diagramy činnosti UML: pokyny.

Sekvenční diagram

Typy parametrů a vrácené hodnoty zprávy.

Typy životnosti.Třída obrazce Životnost by měla zahrnovat operace u všech zpráv, které mohou přijímat.

Viz téma Sekvenční diagramy UML: pokyny.

Diagram komponent

Součást rozhraní výpis jejich operace.

Kompletní komponenty můžete také popsat jako třída.

Viz téma Diagramy komponent UML: pokyny.

Diagram případu použití

Druhy uvedené v označení cíle a kroky případu použití.

Viz téma Diagramy případu použití UML: pokyny.

Základní kroky pro kreslení diagramů tříd

Referenční informace o prvky UML, diagramy třídy, viz Diagramy tříd jazyka UML: odkaz.

[!POZNÁMKA]

Podrobné kroky pro vytvoření libovolné modelování diagramy jsou popsány v Postupy: Úpravy modelů a diagramů UML.

Vytvoření diagramu třídy UML

  1. Na Architektura nabídce zvolte Nový Diagram.

  2. Podle šablony, zvolte Diagramu UML třídy.

  3. Název diagramu.

  4. V Přidat do projektu modelování, vyberte existující projekt modelování v řešení, nebo vytvořit nový projekt modelovánía pak zvolte OK.

    Zobrazí se nový diagram třídy s UMLDiagram třídy nástrojů.Panel obsahuje požadované prvky a vztahy.

Chcete-li nakreslit třídy diagramu UML

  1. Chcete-li vytvořit typ, zvolte třídy, rozhraní nebo výčtu nástroj na panelu nástrojů a klepněte na prázdnou část diagramu.

    Můžete také vytvořit typy v závislosti na typech v kódu.Přetáhnout typy z aplikaci Solution Explorer, architektura Explorer nebo závislost grafy do diagramu.Viz téma Postupy: Vytváření diagramů tříd UML z kódu.

  2. Typy nebo literálů do výčtu přidat atributy nebo operace, zvolte atributy, operace nebo literály typu nadpis a stiskněte klávesu ENTER.

    Podpis lze zapsat jako f(x:Boolean):Integer.Viz atributy a operace.

    Chcete-li rychle přidat několik položek, stiskněte klávesu ENTER dvakrát na konci každé položky.Klávesami Šipka nahoru a dolů v seznamu přesunout.

  3. Rozbalit nebo sbalit typ, zvolte ikonu chevron v jeho levém horním.Můžete rozbalit nebo sbalit atributy a operace část třídy nebo rozhraní.

  4. Nakreslete sdružení, dědičnost nebo propojení závislost mezi typy, klepněte na nástroj odpovídající vztah pak typ zdroje a potom zadejte cíl.

  5. Vytvořit typy v balíčku, vytvoření balíčku pomocí balíček nástroj a vytvořit nové typy a balíčky v rámci balíčku.Můžete použít příkaz kopírovat kopírování typy a vložit je do balíčku.

  6. Každý diagram je zobrazení v modelu, který je sdílen mezi jiné diagramy ve stejném projektu.Chcete-li zobrazit strom úplný model, zvolte zobrazení, Jiné Windows, Průzkumníka modelů UML.

Pomocí třídy, rozhraní a vyčíslení

V soupravě nástrojů jsou k dispozici tři standardní druhy třídění.Tyto jsou označovány jako typy tohoto dokumentu.

Třídy, rozhraní a výčet

  • Použití třídy (1) představují pro většinu účelů typy dat nebo objekt.

  • Použití rozhraní (2) v kontextu, kde je nutné rozlišovat mezi čistého rozhraní a konkrétní třídy, které mají interní implementace.Tento rozdíl je užitečné, pokud je účelem diagram popisující implementaci softwaru.Je méně užitečné jsou při modelování dat pasivní nebo kde definujete pojmy používané k popisu požadavků uživatele.

  • Použití výčtu (3) představující typ, který má omezený počet literálové hodnoty, například Stop a Go.

    • Přidáte vyčíslení hodnoty literálu.Samostatné pojmenujte každou z nich.

    • Můžete zadat také hodnotu pro každou hodnotu literálu, pokud chcete.Zvolte otevřít místní nabídku pro literál ve výčtu, Vlastnostia pak zadejte číslo v hodnotu v Vlastnosti okna.

Každý typ dát jedinečný název.

Dd409416.collapse_all(cs-cz,VS.110).gifZískávání typy z dalších diagramech

Můžete vytvořit typy z jiného diagramu zobrazí v diagramu třídy UML.

Další typ diagramu

Jak získat z diagramu další typy

Diagram třídy UML

Můžete vytvořit třídy se na více než jedné třídy diagram UML.Při vytvoření třídy jednoho diagramu přetáhněte třídy z Průzkumníka modelů UML do jiných diagramu.

To je užitečné, pokud se chcete zaměřit na určité skupiny vztahy každý diagramu.

Je například zobrazit sdružení moučka objednávky a nabídky restaurace na jeden diagram a sdružení moučka objednávky a platby na jiném diagramu.

Diagram komponent

Součásti jsou definovány v diagramu komponent, můžete přetáhnout komponentu z Průzkumníka modelů UML do diagramu třídy.Zobrazí se jako třída.Viz téma Diagramy komponent UML: pokyny.

Sekvenční Diagram UML

Vytvoření třídy a rozhraní z životnosti v sekvenčním diagramu a potom přetáhněte třídy z Průzkumníka modelů UML třídy diagramu UML.Každý životnost v sekvenčním diagramu představuje instanci objektu, součásti nebo herce.

Vytvoření třídy z životnost, otevřete místní nabídku pro životnost a pak zvolte Vytvořit třídu nebo Vytvořit rozhraní.Viz téma Sekvenční diagramy UML: pokyny.

Kód programu

Typy může představovat v kódu v modelu.Přetáhněte z grafy architektura Explorer nebo závislost na diagramu UML třídy třídy, rozhraní nebo vyčíslení.

Typy, které přetáhnete na diagramu se zobrazí.Závislé typy bude přidán také do modelu.Po vytvoření typu UML tímto způsobem můžete poklepáním ho otevřete zdrojový kód.Viz téma Postupy: Vytváření diagramů tříd UML z kódu.

PoznámkaPoznámka
Kód a model průběžně nejsou synchronizovány.Můžete aktualizovat diagram projednat návrhy změn bez ovlivnění kódu.Pozdější změny v kódu neovlivní automaticky diagramu Pokud znovu přetáhněte typu do diagramu.

Atributy a operace

Atribut (4) je pojmenovanou hodnotu, která může mít každá instance typu.Přístup k atributu nemění stav instance.

Operace (5) je metoda nebo funkce, která můžete provést instance typu.Je-li vrátit hodnotu.Pokud jeho isQuery vlastnost hodnotu true, stav instance nelze změnit.

Chcete-li přidat atribut nebo operaci typu otevřete místní nabídku pro daný typ, zvolte Přidata pak zvolte atributu nebo operace.

Zobrazit jeho vlastnosti, otevřete místní nabídku pro atribut nebo operaci a pak zvolte Vlastnosti.Vlastnosti se zobrazí v Vlastnosti okna.

Chcete-li zobrazit vlastnosti operace a parametry, zvolte **[...]**v Parametry vlastnost.Zobrazí se nové dialogové okno Vlastnosti.

Podrobné informace o vlastnostech, které lze nastavit v následujících tématech:

Dd409416.collapse_all(cs-cz,VS.110).gifTypy atributů a operací

Každý typu atributu nebo operaci a každý typ parametru může být jeden z následujících:

  • (žádný) -Ponecháte typ neuvedete v podpisu vynecháním předchozí dvojtečka (:).

  • Jeden standardní primitivní typy: Boolean, celé, řetězec.

  • Typ, který je definován v modelu.

  • Parametrizované hodnoty typu šablony, zapsat šablonu <Parameter>.Viz typy šablon.

Můžete také napsat název typu, který jste dosud nedefinovali v modelu.Název bude uvedena v Typy nespecifikované v Průzkumníku modelů UML.

[!POZNÁMKA]

Pokud následně definovat třídy nebo rozhraní tohoto názvu v modelu starší atributy a operace bude stále odkazovat na prvek v nespecifikované typy.Pokud chcete změnit odkaz na novou třídu, musíte navštívit každý atribut nebo operaci a obnovit typu, výběr z rozevírací nabídky nové třídy.

Dd409416.collapse_all(cs-cz,VS.110).gifVíce typů

Násobnost atributu, operace nebo typ parametru lze nastavit.

Povolené hodnoty jsou následující:

Násobnost

Obsahuje atribut, parametr nebo vrácená hodnota:

[1]

Jednu hodnotu daného typu.Toto nastavení je výchozí.

[0..1]

Null nebo hodnotu daného typu.

[*]

Kolekce libovolný počet výskytů daného typu.

[1..*]

Sada alespoň jeden výskyt daného typu.

[n..m]

Kolekce mezi n a m instance daného typu.

Pokud je mnohočetnost větší než 1, můžete také nastavit tyto vlastnosti:

  • IsOrdered - li pravda, kolekce má definované pořadí.

  • IsUnique - li pravda, nejsou žádné duplicitní hodnoty v kolekci.

Dd409416.collapse_all(cs-cz,VS.110).gifViditelnost

Viditelnost označuje, zda atribut nebo operaci lze přistupovat mimo definici třídy.Povolené hodnoty jsou následující:

Název

Krátký formulář

Význam

Veřejné

+

Přístupný ze všech typů.

Soukromé

-

Přístupné pouze interní definice tohoto typu.

Balíček

~

Přístupné pouze v rámci balíčku, který obsahuje tento typ a všechny balíčky, které explicitně importovat.Viz Definování jmenných prostorů a balíčky.

Chráněný

#

Přístupné pouze tento typ a typů, které dědí.Viz dědičnost.

Dd409416.collapse_all(cs-cz,VS.110).gifNastavení atributu nebo operaci podpisu

Kolekce vlastností obsahuje viditelnost, název, parametry (operace) a typ je podpis atributu nebo operaci.

Podpis můžete psát přímo do diagramu.Klepněte na atribut nebo operaci, vyberte jej a klepněte znovu.

Zapsat podpis ve formuláři:

visibility attribute-name : Type

-nebo-

visibility operation-name (parameter1 : Type1, ...) : Type

Příklad:

+ AddItem (item : MenuItem, quantity : Integer) : Boolean

Krátký formulář viditelnost.Výchozí hodnota je + (veřejného).

Každý typ může být typy, které jste definovali v modelu, standardní typy jako celé číslo nebo řetězec, nebo zadejte nový název, který jste dosud nedefinovali.

[!POZNÁMKA]

Název typu bez zápisu v seznamu parametrů, označuje název parametru, místo jeho typu.V tomto příkladu budou názvy dvou parametrů s typy nespecifikované MenuItem a celé číslo:

AddItem(MenuItem, Integer) /* parameter names, not types! */

Nastavit typ násobnost v podpisu, zápis násobnost v hranatých závorkách, například následující název typu:

+ AddItems (items : MenuItem [1..*])
+ MenuContent : MenuItem [*]

Pokud je atribut nebo operaci statické, jeho název se zobrazí podtržené v podpisu.Pokud je abstraktní, název se zobrazí kurzívou.

Však lze nastavit pouze Je statická a Je abstraktní vlastnosti Vlastnosti okna.

Dd409416.collapse_all(cs-cz,VS.110).gifÚplný podpis

Při úpravě podpis operace nebo atribut některé další vlastnosti může zobrazit na konci řádku a po jednotlivých parametrů.Zobrazí se uzavřených ve složených závorkách {...}.Můžete upravit nebo přidat tyto vlastnosti.Příklad:

+ AddItems (items: MenuItem [1..*] {unique, ordered})
+ GetItems (filter: String) : MenuItem [*] {ordered, query}

Tyto vlastností jsou následující:

V podpisu

Property

Význam

unique

Jedinečný

V kolekci nejsou žádné duplicitní hodnoty.Platí pro typy s násobnost větší než 1.

ordered

Řazení

Kolekce je posloupnost.Pokud je hodnota false, není žádné jednoznačné první položku.Platí pro typy s násobnost větší než 1.

query

Dotaz

Operace nezmění stav jeho instance.Platí pouze pro operace.

/

Je odvozena

Atribut se vypočítává z hodnoty jiných atributů nebo sdružení.

"/" se zobrazí před název atributu.Příklad:

/TotalPrice: Integer

Obvykle úplný podpis zobrazí v diagramu, pouze během úprav.Po dokončení úprav další vlastnosti jsou skryté.Pokud chcete zobrazit úplný podpis vždy, otevřete místní nabídku pro typ a pak zvolte Zobrazit úplný podpis.

Kreslení a pomocí přidružení

Pomocí přidružení představují jakéhokoli druhu propojení mezi dvěma prvky, bez ohledu na způsob navázání implementace v softwaru.Pomocí přidružení může například představují ukazatele v C#, vztah v databázi nebo křížový odkaz z jedné části souboru XML.Přidružení mezi objekty v reálném světě země/oblast a slunce může představovat.Přidružení není řekněte jak propojení je zastoupen, pouze existující informace.

Dd409416.collapse_all(cs-cz,VS.110).gifVlastnosti přidružení

Po vytvoření přidružení nastavení jeho vlastností.Otevřete místní nabídku pro přidružení a pak zvolte Vlastnosti.

Také vlastnosti sdružení jako celek každý role, to znamená každý konec sdružení má některé vlastnosti vlastní.Chcete-li je zobrazit, rozbalte První Role a Druhou roli vlastnosti.

Některé vlastnosti jednotlivých rolí jsou přímo viditelné v diagramu.Takto jsou:

  • Název role.Zobrazí se na konci příslušné přidružení v diagramu.Nastavení diagramu nebo v Vlastnosti okna.

  • Násobnost, které výchozí 1.Také se zobrazí v diagramu ke konci příslušná sdružení.

  • Agregace.Zobrazí se jako obrazce Kosočtverec na jeden konec spojnice.Můžete jej označit, že instance v roli totožný vlastní nebo obsahovat instance ostatních.

  • Navigovatelný je.Pokud je hodnota true pouze jedna role splavných směrem se zobrazí šipka.To můžete označit navigace odkazy a databáze vztahů v softwaru.

Podrobnosti o těchto a dalších vlastnostech naleznete v Vlastnosti přidružení v diagramy tříd UML.

Dd409416.collapse_all(cs-cz,VS.110).gifNavigace

Při kreslení přidružení má na jednom konci, signalizující, že přidružení snadnou navigaci v tomto směru šipky.To je užitečné, pokud diagramu třídy představuje tříd softwaru a sdružení představují ukazatele nebo odkazy.Ale při použití diagramu třídy entit a vztahů nebo obchodní principy je méně relevantní představuje schopnost navigace.V takovém případě můžete nakreslit sdružení bez šipky.Můžete to provést nastavením Je splavných na obou koncích přidružení na hodnotu True vlastnost.Pro zjednodušení si můžete stáhnout ukázku kódu Modelování UML domény.

Dd409416.collapse_all(cs-cz,VS.110).gifAtributy a přidružení

Přidružení je obrazové způsob zobrazení atributů.Například místo vytváření třídy restaurace s atributem typu nabídky, můžete nakreslit přidružení z restaurace do nabídky.

Každý atribut název, bude název role.Zobrazí se na opačném konci přidružení z vlastnící typu.Vyhledat například na myMenu na obrázku.

Obecně je lepší používat pouze pro typy, které by kreslení na diagramu, například primitivní typy atributů.

Ekvivalentní přidružení a atributy

Dědičnost

Použití dědičnost nástroj vytvořit následující vztahy:

  • A Generalizace vztah mezi typ a obecný typ

    -nebo-

  • A realizace vztah mezi třídou a implementuje rozhraní.

Nelze vytvořit smyčky v vztahy dědičnosti.

Dd409416.collapse_all(cs-cz,VS.110).gifGeneralizace

Generalizace znamená, že specializing nebo odvozený typ zdědí atributy, operace a sdružení obecné nebo základního typu.

Obecný typ se zobrazí na konci šipky vztah.

Zděděné operací a atributy nejsou obvykle v specializing typy zobrazeny.Ale můžete přidat do seznamu operací typu specializing zděděné operace.To je užitečné, pokud chcete změnit některé vlastnosti operace typu specializing nebo pokud chcete naznačují, že kód prováděcí postup.

Potlačit definice operace v specializing typ

  1. Klepněte na vztah generalizace.

    Zobrazí zvýrazněný a značku akce se zobrazí blízko něj.

  2. Klepněte na značku akce a klepněte na tlačítko Potlačit operace.

    Potlačit operace se zobrazí dialogové okno.

  3. Vyberte operace, které chcete zobrazit v specializing typu, a klepněte na tlačítko OK.

Operace, které jste vybrali nyní zobrazí v specializing typu.

Dd409416.collapse_all(cs-cz,VS.110).gifRealizace

Realizace znamená, že třída implementuje atributy a operace zadané rozhraní.Rozhraní je na konci šipky spojnice.

Při vytváření spojnice realizace operace rozhraní jsou automaticky replikovány v realizaci třídy.Pokud přidáte nové operace rozhraní jsou replikovány v jeho realizaci třídy.

Po vytvoření vztahu realizace, můžete ji převést zápis typu Lupa.Klepněte pravým tlačítkem myši na vztah a zvolte Zobrazit jako Lupa.

To vám umožní zobrazit rozhraní, která implementuje třída bez zbytečného zaplnění diagramy třídy s odkazy realizace.Můžete také zobrazit rozhraní a třídy, které realizovat v samostatných diagramů.

Realizace znázorněná s konektorem a lupy

Typy šablon

Můžete definovat obecné nebo šablonu typu, který může být parametrické jiných typů nebo hodnoty.

Můžete například vytvořit obecný slovník parametrizovanou typy klíče a hodnoty:

Třída šablony s dvěma parametry

Chcete-li vytvořit typ šablony

  1. Vytvoření třídy nebo rozhraní.Ta se stane vaší typ šablony.Název, například Dictionary.

  2. Otevřete místní nabídku pro nový typ a pak zvolte Vlastnosti.

  3. V Vlastnosti okna, klepněte na tlačítko [...] v Parametry šablony pole.

    Editor kolekce parametrů šablony se zobrazí dialogové okno.

  4. Zvolte Přidat.

  5. Vlastnost název na název parametru typu šablony, například Key.

  6. Nastavit druhu parametru.Výchozí hodnota je třídy.

  7. Pokud má parametr přijmout pouze odvozené třídy zejména základní třídy Omezena hodnotou základní třídy, které chcete.

  8. Přidání parametrů podle potřeby zvolte OK.

  9. Přidáte atributy, operace a typ šablony jako by u ostatních tříd.

    Můžete použít parametry, jejichž typ je třídy, rozhraní nebo výčtu v definici atributů a operací.Například pomocí tříd parametr Key a Value, můžete definovat tuto operaci v Dictionary:

    Get(k : Key) : Value

    Můžete použít parametr, jehož typ je celé jako vázané v velkému.Například celé parametru max lze definovat jako atributu násobnost [0..max].

Po vytvoření typy šablon, můžete je definovat šablonu vazby:

Třída vázaná ze šablony slovníku

Typ šablony

  1. Vytvořit nový typ, například AddressTable.

  2. Otevřete místní nabídku pro nový typ a pak zvolte Vlastnosti.

  3. V Šablona vazby vlastnosti, vyberte typ šablony, například Dictionary, z rozevíracího seznamu.

  4. Rozbalte Šablona vazby vlastnost.

    Pro každý parametr typ šablony se zobrazí řádek.

  5. Každý parametr nastavte vhodnou hodnotu.Například Key parametr třídy nazvané Name.

Balíčky

Balíčky lze zobrazit v diagramu třídy UML.Balíček je kontejner pro jiné prvky modelu.Můžete vytvořit libovolný prvek uvnitř balíčku.V diagramu budou prvky uvnitř balíčku pohybovat při přesunutí balíček.

Rozbalení nebo sbalení ovládací prvek můžete skrýt nebo zobrazit obsah balíčku.

Viz téma Definování balíčky a jmenné prostory.

Generování kódu z diagramy tříd UML

Zahájení implementace třídy v diagramu třídy UML, generovat kód C# nebo upravovat šablony pro generování kódu.Spuštění generování kódu pomocí zadané šablony jazyka C#:

  • Zvolte otevřít místní nabídku pro diagramu nebo prvku, Generování kódua pak nastavte potřebné vlastnosti.

    Další informace o nastavení těchto vlastností a přizpůsobení zadané šablony, viz Postupy: Generování kódu z diagramů tříd UML.

Viz také

Referenční dokumentace

Sekvenční diagramy UML: odkaz

Koncepty

Postupy: Úpravy modelů a diagramů UML

Diagramy tříd jazyka UML: odkaz

Modelování požadavků uživatelů

Diagramy komponent UML: odkaz

Diagramy případu použití UML: odkaz

Diagramy komponent UML: odkaz