Co je Návrhář tříd?
Pomocí nástroje Návrhář tříd v sadě Visual Studio můžete navrhovat, vizualizovat a refaktorovat diagramy tříd v projektech C#, Visual Basic nebo C++. Diagramy tříd znázorňují prvky kódu a jejich vztahy ve vizuální návrhové ploše, což vám pomůže lépe porozumět struktuře projektu a změnit uspořádání kódu.
Poznámka
Návrhář tříd není k dispozici v projektech .NET Core a .NET 5 a novějších.
Diagramy tříd
Tady je postup, který můžete dělat s diagramy tříd, podrobněji:
Návrh: Upravte kód projektu úpravou diagramu tříd. Přidejte nové prvky a odstraňte nežádoucí prvky. Změny se projeví v kódu.
Vizualizovat: Vysvětlení struktury projektu zobrazením tříd v projektu v diagramu Přizpůsobte si diagram, abyste se mohli soustředit na podrobnosti projektu, které vás zajímají nejvíce. Uložte diagram a použijte ho později pro ukázku nebo dokumentaci.
Refaktoring: Přepsání metod, přejmenování identifikátorů, parametrů refaktoringu a implementace rozhraní a abstraktních tříd.
Zobrazení typů a relací
Diagramy tříd zobrazují podrobnosti o typech, například jejich základních členů, a vztahy mezi nimi. Vizualizace těchto entit představuje dynamické zobrazení kódu. To znamená, že můžete upravovat typy v návrháři a pak zobrazit úpravy, které se projeví ve zdrojovém kódu entity. Podobně se diagram tříd synchronizuje se změnami, které uděláte v souborech kódu.
Poznámka
Pokud projekt obsahuje diagram tříd a projekt odkazuje na typ umístěný v jiném projektu, diagram tříd nezobrazuje odkazovaný typ, dokud projekt pro tento typ nevystavíte. Podobně se v diagramu nezobrazí změny kódu externí entity, dokud projekt pro danou entitu znovu neskončíte.
Pracovní postup diagramu tříd
Diagramy tříd vám můžou pomoct pochopit strukturu tříd projektů. Tyto projekty můžou vytvořit jiní vývojáři, nebo potřebujete jenom aktualizaci projektu, který jste sami vytvořili. Diagramy tříd můžete použít k přizpůsobení, sdílení a prezentování informací o projektu ostatním.
Prvním krokem při prezentaci informací o projektu je vytvoření diagramu třídy, který zobrazuje, co chcete zobrazit. Další informace najdete v tématu Přidat diagram tříd. Pro projekt můžete vytvořit více diagramů tříd, které lze použít k zobrazení odlišného pohledu na projekt, zvolené podmnožiny typů projektu nebo vybrané podmnožiny členů typů.
Kromě definování toho, co jednotlivé diagramy tříd znázorňují, můžete také změnit způsob, jakým jsou informace prezentovány; Další informace naleznete v tématu Přizpůsobení diagramů tříd.
Po vyladění jednoho nebo více diagramů tříd je můžete zkopírovat do dokumentů Microsoft Office a vytisknout je nebo je exportovat jako soubory obrázků. Další informace najdete v tématu Kopírování prvků diagramu tříd do dokumentu Microsoft Office, Tisk diagramů tříd a Export diagramů tříd jako obrázků.
Poznámka
Návrhář tříd nesleduje umístění zdrojových souborů, takže změna struktury projektu nebo přesunutí zdrojových souborů v projektu může způsobit ztrátu sledování typů, zejména zdrojového typu typedef, základních tříd nebo typů asociací. Například se může zobrazit chyba Návrhář tříd nemůže zobrazit tento typ. Pokud to uděláte, přetáhněte upravený nebo přemísťovaný zdrojový kód do diagramu tříd znovu a znovu ho zobrazte.
Přidání diagramů tříd do projektů
Pokud chcete navrhovat, upravovat a refaktorovat třídy a další typy, přidejte diagram tříd do projektu C#, Visual Basic nebo C++. Pokud chcete vizualizovat různé části kódu v projektu, přidejte do projektu více diagramů tříd.
Diagramy tříd nemůžete vytvářet z projektů, které sdílejí kód napříč více aplikacemi. Pokud chcete vytvářet diagramy tříd UML, přečtěte si Vytváření projektů a diagramů modelování UML.
Instalace komponenty Návrhář tříd
Pokud jste nenainstalovali komponentu Návrhář tříd, nainstalujte ji podle těchto kroků.
V nabídce Start systému Windows otevřete Instalační program sady Visual Studio nebo v řádku nabídek v sadě Visual Studio vyberte Nástroje>Získat nástroje a funkce.
Instalační program Visual Studio se otevře.
Pokud už máte sadu Visual Studio nainstalovanou, klikněte na tlačítko Upravit z možností.
Vyberte kartu Jednotlivé komponenty a poté posuňte se dolů ke kategorii nástroje kódu.
Vyberte Návrhář tříd a pak vyberte Upravit.
Komponenta návrháře tříd spustí instalaci.
Přidání prázdného diagramu tříd do projektu
V Průzkumníku řešeníklikněte pravým tlačítkem myši na uzel projektu a potom vyberte Přidat>Nová položka. Nebo stiskněte Ctrl+Shift+A. Pokud se zobrazí malé okno s možností přidat soubor kódu, zvolte tlačítko Zobrazit všechny šablony.
Otevře se dialogové okno Přidat novou položku.
Rozbalte Obecnéa v seznamu šablon vyberte Diagram tříd. V případě projektů Visual C++ vyhledejte šablonu diagramu tříd v kategorii utility.
Poznámka
Pokud se šablona diagramu tříd nezobrazuje, podle pokynů nainstalujte komponentu návrháře tříd pro Visual Studio. Jak jsme uvedli dříve v tomto článku, Návrhář tříd není k dispozici pro .NET Core a .NET 5 a novější.
Diagram tříd se otevře v Návrháři tříd jako soubor s příponou .cd a zobrazí se v Průzkumníku řešení . Obrazce a čáry můžete do diagramu přetáhnout z panelu nástrojůnebo přetáhnout uzel projektu z Průzkumníka řešení a přidat do projektu třídy.
Pokud chcete přidat více diagramů tříd, opakujte kroky v tomto postupu.
Zobrazení obsahu kompletního projektu v diagramu tříd
Otevřete prázdný diagram tříd a přetáhněte uzel projektu z Průzkumníka řešení na plochu diagramu tříd. Vytvoří se automaticky vyplněný diagram tříd.
Důležitý
Návrhář tříd není k dispozici v projektech .NET Core.
Přizpůsobení diagramů tříd
Způsob zobrazení informací v diagramech tříd můžete změnit. Můžete přizpůsobit celý diagram nebo jednotlivé typy na návrhové ploše.
Můžete například upravit úroveň přiblížení celého diagramu tříd, změnit způsob seskupení a řazení jednotlivých členů typu, skrytí nebo zobrazení relací a přesunutí jednotlivých nebo sad typů kdekoli v diagramu.
Poznámka
Přizpůsobení způsobu, jakým se obrazce v diagramu zobrazují, nemění základní kód pro typy znázorněné v diagramu.
Oddíly, které obsahují členy typu, například Vlastnosti v oddílu třídy, se nazývají přihrádkami. Jednotlivé oddíly a členy typu můžete skrýt nebo zobrazit.
Přiblížení a oddálení diagramu tříd
Otevřete a vyberte soubor diagramu tříd v Návrhář tříd.
Na panelu nástrojů Návrhář tříd klikněte na tlačítko Přiblížit nebo Oddálit pro změnu úrovně přiblížení plochy návrháře.
nebo
Zadejte konkrétní hodnotu přiblížení. Můžete použít rozevírací seznam Lupa nebo zadat platnou úroveň přiblížení (platný rozsah je 10% až 400%).
Poznámka
Změna úrovně přiblížení nemá vliv na měřítko výtisku diagramu tříd.
Upravte seskupování a řazení členů typu
Otevřete soubor diagramu tříd a vyberte jej v nástroji Návrhář tříd.
Klikněte pravým tlačítkem myši na prázdnou oblast na návrhové ploše a umístěte kurzor na Členové skupiny.
Vyberte jednu z dostupných možností:
Seskupování podle druhu odděluje jednotlivé členy typu do seskupovaného seznamu vlastností, metod, událostí a polí. Jednotlivé skupiny závisí na definici entit: například třída nezobrazuje žádnou skupinu událostí, pokud pro danou třídu ještě nejsou definované žádné události.
Skupina podle přístupu odděluje jednotlivé členy typu do seznamu na základě modifikátorů přístupu člena. Například veřejné a soukromé.
Seřadit abecedně zobrazí položky, které tvoří entitu jako jeden abecední seznam. Seznam se seřadí ve vzestupném pořadí.
Skrýt oddíly na typu
Otevřete a vyberte soubor diagramu tříd v Návrhář tříd.
Klikněte pravým tlačítkem myši na kategorii členů v typu, který chcete přizpůsobit (například vyberte uzel Metody třídy).
Klikněte na Skrýt oddíl.
Vybraná přihrádka zmizí z typového kontejneru.
Skrytí jednotlivých členů typu
Otevřete a vyberte soubor diagramu tříd v Návrhář tříd.
Klikněte pravým tlačítkem myši na člena v typu, který chcete skrýt.
Klikněte na Skrýt.
Vybraný člen zmizí z typového kontejneru.
Zobrazit skryté oddíly a členy u typu
Otevřete a vyberte soubor třídního diagramu v Návrhář tříd.
Klikněte pravým tlačítkem myši na jméno typu se skrytým oddílem.
Klikněte na Zobrazit všechny členy.
V kontejneru typu se zobrazí všechny skryté oddíly a členy.
Skrytí relací
Otevřete a vyberte soubor s diagramem tříd v Návrháři tříd.
Klikněte pravým tlačítkem myši na čáru přidružení nebo dědičnosti, kterou chcete skrýt.
Klepněte na Skrýt pro asociační čáry a na Skrýt linii dědičnosti pro čáry dědičnosti.
Klikněte na Zobrazit všechny členy.
V kontejneru typu se zobrazí všechny skryté oddíly a členy.
Zobrazit skryté relace
Otevřete a vyberte soubor diagramu tříd v Návrhář tříd.
Pravým tlačítkem myši klikněte na typ se skrytým přidružením nebo dědičností.
Klepněte na tlačítko Zobrazit všechny členy pro asociační čáry a klepněte na tlačítko Zobrazit základní třídu nebo Zobrazit odvozené třídy pro čáry dědičnosti.
Odebrání obrazce z diagramu tříd
Obrazec typu můžete z diagramu tříd odebrat, aniž by to ovlivnilo základní kód daného typu. Odebrání obrazců typu z diagramu tříd má vliv jenom na tento diagram: základní kód, který definuje typ a další diagramy, které tento typ zobrazují, nejsou ovlivněny.
V diagramu tříd vyberte obrazec typu, který chcete z diagramu odebrat.
V nabídce Upravit zvolte Odebrat z diagramu.
Obrazec typu a jakékoli čáry přidružení nebo dědičnosti, které jsou spojeny s obrazcem, se již v diagramu nezobrazují.
Odstranění tvaru typu a jeho základního kódu
Klikněte pravým tlačítkem myši na obrazec na návrhové ploše.
V místní nabídce vyberte Odstranit kód.
Obrazec se odebere z diagramu a jeho základní kód se odstraní z projektu.
Kopírování prvků diagramu tříd do dokumentu Microsoft Office
Obrazce můžete kopírovat z diagramu tříd .NET (souboru .cd) do jiných dokumentů. Buď získáte kopii obrazce nebo jeho podkladového kódu na základě typu dokumentu, do kterého ho vložíte. Pokud chcete kopírovat obrazce z diagramů tříd UML v projektu modelování, podívejte se na Export diagramů jako obrázků.
Zkopírování jednoho prvku
Klikněte pravým tlačítkem myši na obrazec a zvolte Kopírovat obrázek.
Kopírování několika prvků
Vyberte obrazce v diagramu, který chcete zkopírovat.
Klikněte pravým tlačítkem myši na výběr a zvolte Kopírovat obrázek.
Zkopírujte všechny prvky v rámci diagramu tříd
Klikněte pravým tlačítkem myši na plochu diagramu a zvolte Vybrat všenebo stiskněte Ctrl+A.
V nabídce Upravit vyberte Kopírovat obrázek.
Můžete také zvolit Kopírovat místo Kopírovat Obrázek. Kopírovat zkopíruje obrázek jako běžný rastrový obrázek. Kopírovat obrázek zkopíruje obrázek jako vektorový obrázek, který je pro většinu aplikací Office lepší.
Export diagramů tříd jako obrázků
Pokud chcete exportovat diagram tříd vytvořený z kódu v projektu, uložte diagram jako obrázek. Pokud chcete místo toho exportovat diagramy tříd UML, podívejte se na část „Export diagramů jako obrázků“ pro více informací.
Export diagramu
Otevřete soubor diagramu tříd (.cd).
V diagramu tříd nebo místní nabídce diagramu vyberte Exportovat diagram jako obrázek.
Vyberte diagram.
Vyberte požadovaný formát.
Zvolte Export k dokončení exportu.
Pokud chcete automaticky aktualizovat exportované obrázky, které jsou propojené z jiných dokumentů, exportujte diagram znovu v sadě Visual Studio.
Tisk diagramů tříd
Diagram tříd můžete vytisknout pomocí funkce tisku sady Visual Studio.
Jak vytisknout diagram tříd
Otevřete diagram tříd.
V nabídce Soubor klikněte na Tisk.
Vytiskne se celý diagram tříd. Možná budete muset upravit nastavení v dialogovém okně Vzhled stránky, abyste tiskli ve správné velikosti.
Přidání komentářů do diagramů tříd
K přidávání poznámek k diagramům tříd můžete použít obrazce komentářů. Obrazec komentáře má jednu vlastnost, Text, do kterého můžete psát text. Obrazce komentářů existují pouze na ploše diagramu, a ne v kódu.
Komentář se nachází v zobrazení diagramu tříd v Návrhář tříd. Pokud ve stejném projektu otevřete druhý diagram tříd, komentáře, které jste vytvořili v prvním zobrazení, nejsou viditelné. Pokud diagram odstraníte, odstraní se také všechny komentáře, které obsahuje.
Velikost obrazce komentáře můžete změnit, ale nemůžete změnit jiné aspekty jeho vzhledu, například barvu pozadí, písmo nebo velikost písma.
Přidání komentáře
Přetáhněte komentář z panelu nástrojů návrháře tříd do diagramu tříd.
Klikněte na nový obrazec komentáře v diagramu a zadejte požadovaný text.
Používejte myš a klávesové zkratky v okně diagramu tříd a podrobností třídy.
K provádění navigačních akcí v návrháři tříd a v okně podrobností třídy můžete použít klávesnici.
Použití myši v Návrháři tříd
Diagramy tříd podporují následující akce myši:
Kombinace tlačítek myši | Kontext | Popis |
---|---|---|
Poklepejte na | Prvky obrazce | Otevře editor kódu. |
Poklikejte na | Konektor Lollipop | Rozbalit/sbalit ikonku |
Poklikejte | Popisek konektoru Lollipop | Vyvolá příkaz Show Interface. |
Kolečko myši | Diagram tříd | Posunujte svisle. |
Shift + kolečko myši | Diagram tříd | Posunujte vodorovně. |
Ctrl + kolečko myši | Diagram tříd | Zvětšení. |
Ctrl+Shift + klik | Diagram tříd | Zvětšení. |
Použijte myš v okně Podrobností třídy
Pomocí myši můžete změnit vzhled okna podrobností třídy a data, která se zobrazí následujícími způsoby:
Kliknutím na libovolnou upravitelnou buňku můžete upravit obsah této buňky. Změny se projeví na všech místech, kde jsou data uložená nebo zobrazená, včetně vlastností okna a ve zdrojovém kódu.
Kliknutí na libovolnou buňku řádku způsobí, že okno Vlastnosti zobrazí vlastnosti prvku reprezentované daným řádkem.
Pokud chcete změnit šířku sloupce, přetáhněte hranici na pravé straně záhlaví sloupce, dokud sloupec nebude mít požadovanou šířku.
Můžete rozbalit nebo sbalit uzly v oddílech nebo vlastnostech kliknutím na symboly šipek nalevo od řádku.
Okno podrobností třídy nabízí několik tlačítek pro přidávání nových členů do aktuální třídy a pro navigaci mezi přihrádkami členů v mřížce okna Podrobnosti třídy .
Použití klávesnice v Návrháři tříd
Diagramy tříd podporují následující akce klávesnice:
Klíč | Kontext | Popis |
---|---|---|
klávesy se šipkami | Uvnitř tvarů typu | Navigace ve stylu stromu v obsahu obrazce (obtékání obrazce je podporováno). Klávesy vlevo a vpravo rozbalí nebo sbalí aktuální položku, pokud je rozbalitelná, a pokud není, přejdou k nadřazené položce (podrobné chování najdete v navigaci stromového zobrazení). |
klávesa se šipkami | Obrazce nejvyšší úrovně | Přesouvání obrazců v diagramu |
Shift+kláves se šipkami | Uvnitř tvarů typu | Vytváření souvislého výběru skládajícího se z prvků obrazce, jako jsou členy, vnořené typy nebo oddíly Tyto klávesové zkratky nepodporují obtékání. |
domů | Uvnitř tvarů typu | Přejděte na název obrazce nejvyšší úrovně. |
domů | Obrazce nejvyšší úrovně | Přejděte k prvnímu obrazci v diagramu. |
End | Uvnitř tvarů písma | Přejděte na poslední viditelný prvek uvnitř obrazce. |
End | Obrazce nejvyšší úrovně | Přejděte na poslední obrazec v diagramu. |
Shift+Home | Vnitřní tvar typu | Vybere prvky v obrazci začínající aktuální položkou a končící nejvyšší položkou na stejném obrazci. |
Shift+End | Obrys vnitřního typu | Stejné jako Shift+Home, ale ve směru shora dolů. |
Enter | Všechny kontexty | Vyvolá výchozí akci na obrazci, která je k dispozici také poklikáním. Ve většině případů se jedná o kód zobrazení, ale některé prvky ho definují jinak (lízátka, hlavičky oddílů, popisky lollipop). |
+ a - | Všechny kontexty | Pokud je aktuálně zaměřený prvek rozbalitelný, tato tlačítka jej rozbalí nebo sbalí. |
> | Všechny kontexty | U elementů s podřízenými položkami se prvek rozbalí, pokud je sbalený a přejde na první podřízenou položku. |
< | Všechny kontexty | Přejde na nadřazený prvek. |
Alt+Shift+L | Uvnitř tvarů typu + na tvarech typu. | Přejde na lízátko vybraného obrazce, pokud je přítomno. |
Alt+Shift+B | Uvnitř typografických tvarů + na typografických tvarech. | Pokud je seznam základních typů zobrazen na obrazci typu a má více než jednu položku, přepne se stav rozšíření seznamu (sbalit nebo rozbalit). |
smazat | O typech a komentářových obrazcích | Vyvolá příkaz Odebrat z diagramu. |
odstranění | Všechno ostatní. | Vyvolá příkaz Odstranit z kódu (členy, parametry, přidružení, dědičnost, lollipop popisky). |
Ctrl+Delete | Všechny kontexty | Vyvolá příkaz Odstranit z kódu při výběru. |
Tab | Všechny kontexty | Přejde na další podřízený prvek ve stejné nadřazené položce (podporuje cyklení). |
Shift+Tab | Všechny kontexty | Přejde do předchozího podřízeného objektu ve stejném nadřazeném objektu (podporuje zabalení). |
mezerník | Všechny kontexty | Přepíná výběr aktuálního prvku. |
Použití klávesnice v okně Podrobností třídy
Poznámka
Následující klíčové vazby napodobují zkušenosti s psaním kódu.
Pomocí následujících kláves navigujte v okně podrobností třídy.
Klíč | Výsledek |
---|---|
, (čárka) | Pokud je kurzor v řádku parametru, zadáním čárky přesunete kurzor do pole Název dalšího parametru. Pokud je kurzor v posledním řádku parametru metody, přesune kurzor na <přidat parametr> pole, které můžete použít k vytvoření nového parametru. Pokud je kurzor jinde v okně podrobností třídy , zadáním čárky do aktuálního pole doslova přidáte čárku. |
; (středník) nebo ) (uzavírací závorka) | Přesuňte kurzor na pole Název v mřížce okna Podrobnosti třídy v dalším řádku s členem. |
Tab | Přesune kurzor na další pole, nejprve se přesune doleva doprava a pak nahoru dolů. Pokud kurzor přechází z pole, ve kterém jste zadali text, podrobnosti třídy zpracuje tento text a uloží ho, pokud nevyvolá chybu. Pokud je kurzor na prázdném poli, jako je <, přidejte parametr>; tabulátor ho pak přesune do prvního pole dalšího řádku. |
mezerník | Přesune kurzor na další pole, nejprve se přesune doleva doprava a pak nahoru dolů. Pokud je kurzor na prázdném poli, například <přidat parametr>, přesune se na první pole dalšího řádku. Všimněte si, že mezera <zadaná okamžitě po čárce> je ignorována. Pokud je kurzor v poli Souhrn, při zadání mezery se přidá znak mezery. Pokud je kurzor ve sloupci Skrýt v daném řádku, zadáním mezery přepnete hodnotu zaškrtávacího políčka Skrýt. |
Ctrl+Tab | Přepněte do jiného okna dokumentu. Můžete například přepnout z okna podrobností třídy na otevřený soubor kódu. |
Esc | Pokud jste začali zadávat text do pole, stisknutí klávesy ESC funguje jako klávesa zpět a vrátí obsah pole na předchozí hodnotu. Pokud má okno podrobností o třídě obecné zaměření, ale žádná konkrétní buňka není zaměřená, stisknutím klávesy ESC se zaměření přesune mimo okno podrobností o třídě . |
šipka nahoru a šipka dolů | Tyto klávesy přesunou kurzor z řádku na řádek svisle v mřížkovém okně s podrobnostmi třídy . |
šipka doleva | Pokud je kurzor ve sloupci Název, stisknutím šipky vlevo sbalíte aktuální uzel v hierarchii (pokud je otevřený). |
šipka vpravo | Pokud je kurzor ve sloupci Název, stisknutím šipky vpravo rozbalíte aktuální uzel v hierarchii (pokud je sbalený). |
Spropitné
Úplný seznam klávesových zkratek najdete v tématu Klávesové zkratky v sadě Visual Studio.