Wizualizacja kodu poprzez generowanie diagramów sekwencyjnych
W Visual Studio Ultimate, generowania diagram sekwencji wizualizacji i zrozumieć, jak kod implementuje określonej metody.Diagram sekwencji opisuje interakcji między obiektami jako seria linie życia i wiadomości.Linie życia reprezentują wystąpień obiektów, a wiadomości wywołania metody między tymi obiektami.Można wygenerować diagramy sekwencji z Visual C# .NET or Visual Basic .Kod netto.
[!UWAGA]
Diagram sekwencji generowanych pokazano elementy podobne do diagramu sekwencji UML.Diagram sekwencji, który jest generowany na podstawie kodu niezależnie od modelu UML i mogą być dodawane do dowolnego.NET projektu.Natomiast narysowanego odręcznie diagram sekwencji UML jest zawsze część modelu, w którym został utworzony.Aby uzyskać więcej informacji, zobacz Diagramy sekwencji UML: odwołania.
W tym temacie
Generowanie Diagram sekwencji z kodu źródłowego
Eksplorowanie kodu na diagramach sekwencji
Edycja Diagram zaproponować zmiany projektu
Nawigacja z diagramu
Łączenie elementów interakcji do elementów pracy
Relacje do innych diagramów
Rozwiązywanie problemów z diagramy sekwencji
Generowanie Diagram sekwencji z kodu źródłowego
Aby wygenerować diagram sekwencji z kodu
W programie Visual Studio Otwórz plik kodu, który zawiera definicję metody.
Otwórz menu skrótów w dowolne miejsce w definicji metody, a następnie wybierz Wygenerować Diagram sekwencji.
W Wygenerować Diagram sekwencji dialogowe, w Maksymalna głębokość wywołań Określ maksymalny poziom wywołania, które chcesz wyświetlić.
Na przykład jeśli chcesz zobaczyć tylko pierwszy poziom połączeń, należy określić poziom wywołania maksymalnej głębokości 1.
[!UWAGA]
Diagram sekwencji wyświetli drugi poziom wywołania jako wiadomości, które mają linii życia nie docelowe, które nazywane są utracone wiadomości.Po wygenerowaniu diagramu można rozwinąć określonych wiadomości utracone.Aby uzyskać więcej informacji na temat utracone wiadomości, zobacz Diagramy sekwencji UML: odwołania.
W obszarze Dołącz wywołuje w, wybierz zakres z poniższej tabeli:
Aby zobaczyć
Wybierz
Wzywa do elementów w bezpośrednim projektu
Bieżący projekt
Zwraca elementy w roztworze
Rozwiązanie (domyślnie)
Zwraca elementy wewnątrz i na zewnątrz roztwór
Roztwór i odwołania zewnętrzne
Na przykład można uruchomić z diagramu sekwencji proste poprzez zbadanie tylko te wywołania metody do elementów w bezpośrednim projektu.Zakres diagramu można rozwinąć, generując nowy pokazuje wywołania do elementów w poprzek roztworu.Jeśli chcesz Zobacz wywołania do elementów, które nie są w roztworze, należy wygenerować diagramu, zawierającego odwołania zewnętrzne.
W obszarze wykluczyć wywołania, można uprościć diagram więcej pominięto zwraca następujące elementy:
Aby pominąć wywołania
Wybierz
Właściwości i zdarzeń
Właściwości i zdarzenia (domyślnie)
Systemobszar nazw
Obszar nazw systemu (domyślnie)
Określonych obszarów nazw
Inne obszary nazw, a następnie wpisz w polu obszarów nazw przy użyciu przecinka (,) aby je rozdzielić.Nie należy używać symboli wieloznacznych (*) znaków jako nie są obsługiwane.
Aby dołączyć wywołania do tych elementów, wyczyść ich odpowiednie pola wyboru.
Gdy skończysz, wybierz polecenie OK.
Visual Studio generuje diagram sekwencji i dodaje go do odpowiedniego projektu.Informacje dotyczące problemów z generatorów diagramy sekwencji, zobacz Rozwiązywanie problemów diagramy sekwencji.
[!UWAGA]
Deklaracje tablic nie są wyświetlane na diagramach sekwencji wygenerowany.
Aby zidentyfikować i zmianach, które chcesz wprowadzić bez wpływu na kod, można eksplorować i zmodyfikować diagram sekwencji wygenerowany.Na przykład można dodać nowe linie życia, wiadomości, zastosowań interakcji i fragmentów.Tworzenie i śledzenie zadań do pracy, którą chcesz wykonać na odpowiadający mu kod, można utworzyć lub połączyć elementy pracy elementów diagramu.Aby uzyskać więcej informacji, zobacz Łączenie elementów modeli i elementów pracy.
Ważne |
---|
Po wygenerowaniu diagramu, wszelkie zmiany wprowadzone do diagramu nie pojawi się w kodzie, a wszelkie zmiany w kodzie nie pojawi się na diagramie.Aby wyświetlić te zmiany, należy wygenerować nowy diagram sekwencji.Z tej samej metody tyle razy, można wygenerować nowy diagram sekwencji. |
Eksplorowanie kodu na diagramach sekwencji
Diagram sekwencji można poznać kod i przedstawić go innym użytkownikom.Aby osiągnąć diagram najbardziej przydatne dla tych celów, wypróbować różne zakresy podczas generowania diagramu.Diagram można także modyfikować po wygenerowaniu go.Na przykład można usunąć wiadomości, które nie są interesujące dla prezentacji i omawiania projektu.
Można wprowadzić następujące zmiany do diagramu sekwencji.
Aby |
Wykonanie tych kroków |
---|---|
Wyświetlić następny poziom wywołania |
Otwórz menu skrótów dla wiadomości z linii życia nie docelowe, a następnie wybierz Rozwiń wychodzących. |
Rozwiń węzeł komunikatu w nowy diagram |
Otwórz menu skrótów dla wiadomości, a następnie wybierz Wygenerować Diagram sekwencji. Nowy diagram zostanie dodany do bieżącego projektu. |
Zwijanie grupy wiadomości w jednej linii życia. |
Zaznacz linie życia, które chcesz grupować, otwórz menu skrótów dla zaznaczenia, a następnie wybierz Zwiń. Można zmienić nazwę grupy, ale nazwa zostaną utracone, gdy go rozwinąć. Aby rozwinąć grupę, należy otworzyć menu skrótów dla niego i wybierz Rozwiń. |
Usuwanie elementów |
Otwórz menu skrótów kształtu, a następnie wybierz polecenie usunąć. |
Poprawy układu |
Otwórz menu skrótów dla pustego obszaru diagramu, a następnie wybierz Ponowne rozmieszczanie układu. Można także cofnąć tego polecenia. |
Podświetl wybrane elementy |
Otwórz menu skrótów dla elementu, a następnie wybierz polecenie Właściwości.W Właściwości ustawiony w oknie Kolor pola. |
Dodawanie adnotacji do diagramu |
Wybierz komentarz narzędzie, kliknij na diagramie, a następnie wpisz notatkę do komentarza.Użyj Łącze komentarz narzędzie połączyć komentarz do jednego lub więcej punktów linie życia lub fragmentów. |
Edycja Diagram zaproponować zmiany projektu
Diagram, można zmienić, dodając i usuwając elementy ułatwiające należy rozważyć alternatywne projekty.Można także skopiować części diagramu do diagramu sekwencji UML, utworzony w projekcie modelowania UML.Który umożliwia kojarzenie życia z typów, składniki i podmiotami modelu UML.
Poniższa tabela zawiera podsumowanie zmian, które są przydatne do opisywania propozycji projektu.Aby uzyskać więcej szczegółów, zobacz Diagramy sekwencji UML: wytyczne.
Aby |
Wykonanie tych kroków |
---|---|
Podświetl linii życia, wiadomości i innych elementów |
Zmiana elementu Kolor właściwości. - lub - Łącze komentarz do elementu:
|
Przenieś linie życia |
Przeciągnij kształt linia życia do innego obszaru diagramu. Aby przenieść grupę linie życia, które zostały utracone lub znaleźć wiadomości, wykonaj następujące kroki, aby wybrać życia, przed przeniesieniem ich:
|
Przenoszenie i zmiana kolejności wiadomości |
Przeciągnij wiadomość, w górę lub w dół na diagramie.
|
Dodawanie kształtu Linia życia |
Wybierz linii życia w Przybornik, a następnie wybierz polecenie diagramu. |
Dodaj wiadomość |
|
Kopiowanie linii życia i wiadomości do lub z innych diagramów |
Kopiowanie i wklejanie linie życia. Wiadomości między nimi zostaną automatycznie skopiowane także.
Uwaga
Podczas kopiowania linie życia z diagramu sekwencji UML w projekcie modelowania na diagramie sekwencji generowanych, może występować tylko nagłówki linia życia lub może być konieczne dostosowanie ich kolory.Aby rozwiązać ten problem, wybierz wklejone linie życia i ustawić ich Kolor właściwości.
|
Należy ująć wiadomości w scalonej fragmentu |
Użyj Scalonej fragmenty do reprezentowania sekwencji alternatywnych, pętle i innych kompozycji wiadomości. |
Przenoszenie wiadomości do nowego diagramu |
Otwórz menu skrótów dla wiadomości, a następnie wybierz przenieść Diagram. Jest tworzony nowy diagram, który zawiera wiadomość i jej uzupełniającej wiadomości.Na diagramie oryginalnej wiadomości zastępuje Wykorzystania interakcji. |
Kopiuj diagram |
Skopiuj diagramu w oknie Solution Explorer, lub skopiować pliki w Eksploratorze Windows.Istnieją dwa pliki skojarzone z każdym diagramu. Diagram sekwencji generowanych mogą być edytowane za pomocą dowolne wystąpienie Visual Studio Ultimatei można je odczytać za pomocą Visual Studio Ultimate lub Visual Studio Premium. |
Brak wyróżnienia pewnych zmian ręczne, takie jak dodawanie i zmienianie nazwy |
|
Nawigacja z diagramu
Aby |
Wykonanie tych kroków |
---|---|
Przejdź z linii życia lub wiadomość do definicji klasy lub metody, odpowiednio |
Otwórz menu skrótów dla życia lub wiadomość, a następnie wybierz Przejdź do definicji. |
Znajdź w Eksploratorze architektury klasy lub metody |
Otwórz menu skrótów dla życia lub wiadomość, a następnie wybierz Pokaż w Eksploratorze architektury. Aby uzyskać więcej informacji, zobacz Wizualizacja zależności kodu na wykresach zależności. |
Łączenie Diagram sekwencji do elementów pracy
Ułatwić wdrażanie zmiany planu, można połączyć elementów jakiegokolwiek rodzaju na diagramie sekwencji elementów roboczych Team Foundation Server.Przed rozpoczęciem, upewnij się, że nawiązano połączenie Team Foundation Server.Aby uzyskać więcej informacji, zobacz Łączenie elementów modeli i elementów pracy.
Aby |
Wykonanie tych kroków |
---|---|
Utworzyć i połączyć nowe elementy pracy linie życia, wiadomości i innych elementów |
|
Linie łączy życia, wiadomości i innych elementów elementy pracy |
Później można powtarzać tego polecenia, aby dodać więcej łączy element pracy do tego samego elementu modelu. |
Wyświetlanie elementów pracy połączonego |
Otwórz menu skrótów dla jednego lub wielu elementów, a następnie wybierz Elementów pracy w widoku. |
Usuwanie łącza do elementów pracy |
Łącza między elementem modelu i elementów wybranych pracy są usuwane.Elementy pracy i elementy modelu nie są usuwane. |
Wskazówki dotyczące używania generowanych diagramy sekwencji
Poniższe wskazówki może być przydatna w odwiedzają diagramy sekwencji wygenerowanego kodu.
Eksplorowanie kod
Generowanie diagramów zależność uzyskać ogólny obraz głównych grup i współzależności w dużych treści kodu.Następnie można generować diagramy sekwencji koncentrować się na poszczególnych części projektu.Aby uzyskać więcej informacji, zobacz Wizualizacja zależności kodu na wykresach zależności.
Interpretowanie diagramu
Algorytm, który tworzy wykres przeprowadza symboliczne wykonanie kodu.Istnieją pewne sytuacje, które technika ta nie obejmuje.W szczególności obejmować następujące sytuacje:
Linie życia dwóch lub więcej może być wyświetlana na diagramie, gdzie kodu wykonującego dotyczy tylko z jednego wystąpienia.Ogólnie rzecz biorąc życia oddzielnych docelowego jest generowana dla każdej wiadomości.
Typ kształtu Linia życia jest typ zadeklarowany w kodzie programu, nawet, jeśli kod zawsze używa podtypu.
Koncentrując się na aspektu projektu
Wybierz jeden z aspektów projektu, aby skoncentrować się na.Generowanie różnych diagramów koncentrować się na różnych aspektów i skopiowanie plików diagramu na każdym etapie pracy.
Aby uzyskać przydatne diagram, który wyraźnie uwidacznia aspektu projektowania, może zajść eksperymentować z obszaru nazw filtrów i generacji.
Usuwanie wiadomości, które nie są odpowiednie do aspektu fokus i rozwiń odpowiednie wiadomości, aby wyświetlić więcej szczegółów.
Użyj Zwiń polecenia do grupy linie życia, reprezentujące Wydajna współpraca za grupę obiektów, chyba że ich wewnętrzne interakcje są interesujące dla aspekt są koncentrujących się na.
Aktualizowanie projektu
Można wspólnie pracować nad diagramu za pomocą kontroli wersji.Zaleca się, aby zablokować diagramu, podczas jego edycji, tylko jedna osoba może edytować naraz.
Za pomocą diagramu sekwencji generowanych, można często zidentyfikować funkcji istniejącego kodu, które utrudniają zmieniać bądź dostosowywać.Na przykład można zauważyć, że jeden linia życia wysyła wszystkie wiadomości, ale inni tylko odpowiedzi na wiadomości, bez wysyłania wielu swoich własnych.Należy rozważyć, czy pracę wykonywaną przez ten obiekt może być bardziej skutecznie podzielona między innymi obiektami.Każda klasa obiektu powinny mieć jedno zadanie jasno określone.Ogólnie rzecz biorąc, zasada ta ułatwia zidentyfikować części, które program musi zostać zmieniona po użytkowników wymaga zmiany, lub aby zmienić rozmieszczenie części aplikacji w różnych wariantów.
Jeśli diagram, który koncentruje się na konkretnych aspektów projektu, skopiowanie go i edytować je w celu utworzenia alternatywnej propozycji zmian.
Można skopiować elementów diagramu sekwencji generowanych w diagramie sekwencji UML.Należy najpierw utworzyć diagram sekwencji UML wewnątrz projektu modelowania UML.Tam modelować projekt zaktualizowane w różnych widokach i życia można połączyć składniki lub klasy w modelu.Można rozszerzać interakcji, aby uwzględnić podmiotów zewnętrznych.
Rozwiązywanie problemów z diagramy sekwencji
W poniższej tabeli opisano problemy, które mogą wystąpić podczas generowania diagramy sekwencji i możliwych rozwiązań:
Problem |
Rozdzielczość |
---|---|
Nie można wygenerować diagram sekwencji. |
Diagram sekwencji nie może wygenerować, jeśli System obszaru nazw jest wyłączone, a kod zawiera wywołanie metody COM, który akceptuje ref lub out parametrów i przekazuje parametr za pomocą new słowa kluczowego.Aby uniknąć tego problemu, zmień kod lub podczas generowania diagram zawiera System obszaru nazw. |
Diagram sekwencji puste są generowane po wyświetlany jest następujący komunikat: "Odwołanie do obiektu nie jest ustawiony do wystąpienia obiektu." Ten problem występuje, gdy diagram sekwencji jest generowany na podstawie jawnych implementacja metody interfejsu i diagramu nie zostanie dodany do projektu źródłowego automatycznie.Jawne wykonania poprzedza nazwa metody z nazwą interfejsu i kropki (.). Na przykład ten problem występuje podczas generowania diagram sekwencji z następujący podpis i nie diagram sekwencji automatycznie dodać do projektu:
|
Gdy jest to możliwe, nie zawierają nazwy interfejsu i kropki (.). - lub - W oknie dialogowym Sekwencja diagram generacji upewnij się automatycznie dodać diagram sekwencji do projektu. |
Diagram sekwencji zajmuje bardzo długie, aby wygenerować. - lub - Diagram sekwencji ulega awarii na wznowienie. W zależności od konfiguracji komputera, może być zbyt duży, aby szybko wygenerować diagram sekwencji i może spowodować Visual Studio uruchomienie z pamięci i awarii po zamknięciu i ponownym otwarciu diagramu.Na przykład diagram sekwencji, który ma 390 linii życia i 19,000 wiadomości wyniki w pliku diagramu, który jest więcej niż 85 MB. |
Ograniczyć zakres diagramu przez zmniejszenie głębokość wywołania, niepotrzebne obszary nazw, usuwanie właściwości i zdarzenia, filtrowanie itd. |
Zobacz też
Informacje
Diagramy sekwencji UML: odwołania