Udostępnij za pośrednictwem


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

  1. W programie Visual Studio Otwórz plik kodu, który zawiera definicję metody.

  2. Otwórz menu skrótów w dowolne miejsce w definicji metody, a następnie wybierz Wygenerować Diagram sekwencji.

    Generowanie sekwencji, okno dialogowe

  3. 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.

  4. 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.

  5. 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.

  6. 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żna uwagaWaż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:

  1. W Przybornik, wybierz polecenie komentarz, a następnie na diagramie, kliknij w pobliżu elementu.

  2. W Przybornik, wybierz polecenie Łącze komentarzi na diagramie, wybrać polecenie komentarz, a następnie wybierz element.

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:

  • Narysuj prostokąt wokół życia.

    - lub -

    Naciśnij i przytrzymaj klawisz CTRL klucza, podczas gdy wybierz każdej linii życia.

    UwagaUwaga
    Jeśli używasz Zaznacz wszystko lub CTRL+a , aby zaznaczyć wszystkie linie życia, a następnie przenieś je, wszystkie utracone lub znaleźć wiadomości dołączonych do tych linie życia nie przeniesie.Jeśli w takim przypadku te wiadomości można przenosić osobno.

Przenoszenie i zmiana kolejności wiadomości

Przeciągnij wiadomość, w górę lub w dół na diagramie.

  1. Zaznacz wiadomość, a następnie:

  2. Aby dopasować położenie wiadomości, użyj Strzałka w górę i Strzałka w dół klawiszy.

  3. Aby zmienić kolejność wiadomości, użyj CTRL+Strzałka w górę i CTRL+Strzałka w dół.

Dodawanie kształtu Linia życia

Wybierz linii życia w Przybornik, a następnie wybierz polecenie diagramu.

Dodaj wiadomość

Jak utworzyć wiadomości
  1. W Przybornik, wybierz polecenie synchroniczny lub asynchroniczno wiadomości.

    Aby dodać znaleźć wiadomość lub utracone wiadomości, użyj asynchroniczno wiadomości.Znaleziony wiadomość pochodzi z źródła zdarzenia nieznany i emisji nieznany adresat wiadomości utracone.

  2. Na diagramie wybierz kształt linia życia źródła.

  3. Wybierz kształt linia życia docelowych.

    - lub -

    Aby utworzyć wiadomość znaleziony lub utracone wiadomości, wybierz pusty obszar na diagramie za życia źródła lub z przodu, odpowiednio.

  4. Wpisz nową nazwę dla wiadomości.

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.

UwagaUwaga
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

  1. Zaznacz jeden lub więcej wiadomości.

  2. Otwórz menu skrótów dla zaznaczenie, wskaż polecenie Surround With, a następnie wybierz typ 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

  1. Otwórz menu skrótów dla powierzchni diagram sekwencji, a następnie wybierz Właściwości.

  2. Ustaw Pokaż zmiany Podręcznika właściwość, aby False.

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

  • Otwórz menu skrótów dla jednego lub wielu elementów, wybierz polecenie Utworzyć element pracy, a następnie wybierz typ elementu pracy, który chcesz utworzyć.

    Nowy element pracy otwiera się tak, aby po ich zakończeniu.

Linie łączy życia, wiadomości i innych elementów elementy pracy

  1. Otwórz menu skrótów dla jednego lub wielu elementów, a następnie wybierz łącze do elementu pracy.

  2. W łącza do elementów pracy okno dialogowe, uruchom kwerendę, aby znaleźć element pracy lub bezpośrednio wprowadzić jego identyfikator.Można wybrać dowolną liczbę elementów 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

  1. Otwórz menu skrótów dla elementu, a następnie wybierz Usunąć elementów pracy.

  2. W Usunąć łącza do elementów pracy okno dialogowe Wybierz łącza elementu pracy, który chcesz usunąć.

Łą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.

Ee317485.collapse_all(pl-pl,VS.110).gifEksplorowanie 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.

Ee317485.collapse_all(pl-pl,VS.110).gifInterpretowanie 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.

Ee317485.collapse_all(pl-pl,VS.110).gifKoncentrują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.

Ee317485.collapse_all(pl-pl,VS.110).gifAktualizowanie 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:

void ILinkedWorkItemExtension.OnWorkItemCreated( ) {}

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

Koncepcje

Wizualizacja i poznanie kodu

Wizualizacja zależności kodu na wykresach zależności

Tworzenie diagramów warstwy na podstawie kodu