Warstwy diagramów: wytyczne
Można opisać architektury danej aplikacji na wysokim poziomie, tworząc Diagramy warstwy w Visual Studio Ultimate.Aby mieć pewność, że Twój kod pozostaje zgodny z tego projektu, Przeprowadź walidację kodu z diagramu warstwy w Visual Studio Ultimate lub Visual Studio premii.Proces kompilacji mogą również znajdować warstwy sprawdzania poprawności.Zobacz kanału 9 wideo: projektowania i sprawdzenia poprawności architektury przy użyciu diagramów warstwy.
Co to jest diagram warstwy?
Jak schemacie tradycyjnej architektury diagram warstwy identyfikuje główne składniki lub jednostki funkcjonalne projektu i ich współzależności.Każdy węzeł na diagramie, o nazwie warstwy, reprezentuje logiczną grupę obszarów nazw, projekty lub inne przedmioty.Aby rysować zależności, które powinny istnieć w projekcie.W przeciwieństwie do diagramu tradycyjnej architektury, można zweryfikować, że rzeczywista zależności w kodzie źródłowym są zgodne z zamierzonym zależności, określonej przez użytkownika.Dokonując sprawdzania poprawności część regularnego budować na Team Foundation Server, daje pewność, że kod programu w dalszym ciągu przylegają do architektury systemu przez przyszłe zmiany.Zobacz Warstwy diagramów: odwołania.
Jak zaprojektować lub zaktualizuj aplikację z diagramami warstwy
Poniższe kroki zawierają omówienie sposobów użycia diagramów warstwy w procesie rozwoju.Później w tym temacie opisano bardziej szczegółowo o każdym kroku.Jeśli tworzysz nowy projekt, należy pominąć kroki, które odwołują się do istniejącego kodu.
[!UWAGA]
Następujące kroki są wyświetlane w przybliżonej kolejności.Prawdopodobnie chcesz nałożyć zadania, ponownie uporządkować je do własnych sytuacji i je ponownie na początku każdej iteracji w projekcie.
Tworzenie diagramu warstwy dla całej aplikacji lub dla warstwy znajdujące się w nim.
Definiowanie warstw do reprezentowania podstawowego obszarów funkcjonalnych lub składników aplikacji.Nazw tych warstw, zgodnie z ich funkcją, na przykład "Prezentacja" lub "Usługi".Jeśli masz Visual Studio roztwór, każdą warstwę można skojarzyć z kolekcją artefakty, na przykład projektów, obszary nazw, plików i tak dalej.
Odkrywanie zależności istniejących między warstwami.
Edycja warstw i zależności pokazanie zaktualizowanego projektu ma kod w celu odzwierciedlenia.
Zaprojektuj nowe obszary aplikacji przez tworzenie warstw do reprezentowania głównych bloków architektonicznych lub składniki i definiowanie zależności, aby pokazać, jak każda warstwa używa innych.
Edytuj układ i wygląd diagramu ułatwiające przedyskutować z współpracowników.
Sprawdzanie poprawności kodu z diagramu warstwy aby wyróżnić konflikty między kodem i architektura potrzebujesz.
Aktualizacja kodu odpowiadają typowi swojej nowej architektury.Wielokrotnie powtarzane opracowanie i refaktoringu kodu, dopóki nie zostanie sprawdzanie poprawności wyświetlone informacje o konfliktach.
Obejmują warstwy sprawdzania poprawności podczas procesu budowania do zapewnienia, że kod jest w dalszym ciągu stosować się do swojego projektu.
Tworzenie diagramu warstwy
Diagram warstwy musi być utworzony wewnątrz projektu modelowania.Można dodać nowy diagram warstwy do istniejącego projektu modelowania, utworzyć nowy projekt modelowania diagramu warstwy lub skopiować istniejący diagram warstwę nad tym samym projektem modelowania.
Ważne |
---|
Nie dodawaj, przeciągnij lub skopiować istniejący diagram warstwy z projektu modelowania, do innego projektu modelowania lub w innej lokalizacji w roztworze.Diagram warstwy, która zostanie skopiowana w ten sposób będzie mieć tych samych odniesień, co diagram oryginalnej, nawet jeśli modyfikowania diagramu.Pozwoli to uniknąć warstwy sprawdzania poprawności poprawną pracę i może być przyczyną innych problemów, takich jak brakujące elementy lub inne błędy podczas próby otwarcia na diagramie. |
Zobacz Tworzenie diagramów warstwy na podstawie kodu.
Definiowanie warstw do reprezentowania obszarów funkcjonalnych lub elementów
Warstwy stanowią logiczne grupy artefakty, takich jak projekty, pliki kodu, obszary nazw, klasy i metody.Warstwy mogą być tworzone z artefaktów z projektów Visual C# .NET i Visual Basic .NET, lub do warstwy można dołączyć specyfikacje lub plany, łączenie dokumentów, takich jak pliki programu Word lub prezentacji programu PowerPoint.Każda warstwa jest wyświetlana jako prostokąt na diagramie i pokazuje liczbę artefaktów, które są z nim połączone.Warstwy mogą zawierać warstwy zagnieżdżone, które opisują szczegółowo zadania.
Należy przyjąć ogólną zasadę, nazwy warstw zgodnie z ich funkcją, na przykład "Prezentacja" lub "Usługi".Jeśli artefakty są ściśle współzależne, umieść je na tej samej warstwie.Jeśli artefakty można aktualizować oddzielnie lub używany w oddzielnych aplikacjach, umieść je w różnych warstwach.Aby uzyskać informacje dotyczące wzorców warstw, odwiedź desenie & Wskazówki dotyczące witryny w https://go.microsoft.com/fwlink/?LinkId=145794.
Porada |
---|
Istnieją pewne rodzaje artefaktów, które można połączyć się z warstwy, ale które nie obsługują sprawdzanie poprawności na podstawie diagramu warstwy.Aby sprawdzić, czy artefakt obsługuje sprawdzanie poprawności, należy otworzyć Explorer warstwy do zbadania Obsługuje sprawdzanie poprawności właściwość łącza artefaktu.Zobacz Zarządzanie połączeniami między warstwami i artefakty. |
Podczas aktualizacji nieznanych aplikacji, można użyć wykresy zależność pomocne eksplorować i zrozumieć ten kod.Te wykresy mogą pomóc odkryć, klastry i współzależności w kodzie.Za pomocą Eksploratora architektury może być również zbadać obszary nazw i klasy, które często odpowiadają dobrze istniejące warstwy.Może to pomóc ułatwić artefakty umożliwia przypisanie do warstw.Następnie można diagramy warstwy ułatwiające zaktualizować kod.
Aby uzyskać więcej informacji, zobacz następujące tematy:
Odkrywanie zależności istniejącej między warstwami
Istnieje zależność wszędzie tam, gdzie artefakt, który jest skojarzony z jedną warstwą odwołuje się do artefaktu, który jest skojarzony z innej warstwy.Na przykład klasa w jednej warstwie deklaruje zmienna, która zawiera klasę w innej warstwie.Zależności istniejącej można wykryć za pomocą odtwarza je.
[!UWAGA]
Zależności nie może być odtworzone dla niektórych rodzajów artefakty.Na przykład bez zależności będzie odtwarzane z lub do warstwy, połączonej z plikiem tekstowym.Aby zobaczyć, które artefakty mają zależności, że możesz odtwarzanie, kliknij prawym przyciskiem myszy jeden lub wiele warstw, a następnie kliknij przycisk Łączy View.W Explorer warstwy, zbadać Obsługuje sprawdzanie poprawności kolumny.Zależności nie będą odtwarzane dla artefaktów, dla których w tej kolumnie wyświetlana False.
Aby odtwarzanie istniejącej zależności między warstwami
- Wybierz jednego lub wielu warstw, kliknij prawym przyciskiem myszy zaznaczonej warstwy, a następnie kliknij przycisk Wygenerować zależności.
Zazwyczaj widać niektóre zależności, które nie powinny istnieć.Możesz edytować te zależności dostosowania ich projektowi.
Edycja warstw i zależności, aby pokazać projektowi
Opisujące zmiany, które zamierza się wprowadzić w systemie lub zamierzonej architekturze, wykonaj następujące kroki, aby edytować diagram warstwy.Można też rozważyć wprowadzenie pewnych zmian refaktoryzacji w celu poprawy struktury kodu przed jej rozszerzenie.Zobacz poprawy struktury kodu.
Aby |
Wykonanie tych kroków |
---|---|
Usunąć zależność, która nie powinna istnieć |
Należy kliknąć współzależność, a następnie naciśnij klawisz usunąć. |
Zmienić lub ograniczyć kierunek zależność |
Ustaw jego kierunek właściwość. |
Tworzenie nowych zależności |
Użycie zależność i Dwukierunkowe zależność narzędzia. Aby narysować wiele zależności, kliknij dwukrotnie narzędzie.Gdy skończysz, kliknij przycisk wskaźnik narzędzie lub naciśnij klawisz ESC klucz. |
Określ, że artefaktów związanych z warstwą nie może zależeć od określonych obszarów nazw |
Wpisz obszarów nazw na warstwie Zabronione zależności obszaru nazw właściwość.Użyj średnika (;) do oddzielenia obszarów nazw. |
Określ, że artefaktów związanych z warstwą nie musi należeć do określonych obszarów nazw |
Wpisz obszarów nazw na warstwie Zabronione przestrzenie nazw właściwość.Użyj średnika (;) do oddzielenia obszarów nazw. |
Określ, że artefaktów związanych z warstwą musi należeć do jednego z określonych obszarów nazw |
Wpisz obszar nazw na warstwie Wymagane przestrzenie nazw właściwość.Użyj średnika (;) do oddzielenia obszarów nazw. |
Poprawy struktury kodu
Zmiany refaktoryzacji są ulepszenia, które nie wpływają na zachowanie aplikacji, ale czytelność kodu zmiana i rozszerzenie w przyszłości.Dobrze rozbudowane kod ma projekt, który ułatwia streszczenie do diagramu warstwy.
Na przykład jeśli utworzysz warstwy dla każdego obszaru nazw w kodzie i następnie odtwarzanie zależności, należy minimalny zestaw jednokierunkowe zależności między warstwami.Jeśli tworzysz bardziej szczegółowego diagramu przy użyciu klas lub metody jako warstwy, w wyniku powinni również mieć te same właściwości.
Jeśli to się nie stanie, kod będzie trudniejszy do zmiany przez całe jego życie i będzie mniej korzystne dla zatwierdzenia przy użyciu diagramów warstwy.
Zaprojektuj nowe obszary aplikacji
Po uruchomieniu rozwoju nowego projektu lub nowy obszar w nowym projekcie, można narysować warstw i zależności ułatwiające identyfikację głównych składników, zanim zaczniesz tworzenie kodu.
Pokaż możliwych do zidentyfikowania wzorców architektonicznych w diagramach warstwy, jeśli to możliwe.Na przykład diagram warstwy, który opisuje aplikacji pulpitu mogą zawierać warstwy prezentacji, logiki domeny i magazynu danych.Diagram warstwy, która obejmuje pojedynczej funkcji w aplikacji może mieć warstwy, takie jak Model, widok i kontrolera.Aby dowiedzieć się więcej na temat takich wzorców, zobacz wzorców & Praktyk: Architektura aplikacji.
Jeśli często tworzysz podobne modele, należy utworzyć niestandardowe narzędzie.Zobacz Jak: Definiowanie niestandardowej modelowania element przybornika.
Utwórz artefakt kodu dla każdej warstwy na przykład obszar nazw, klasy lub składnika.Dzięki temu łatwiej wykonaj kod link artefakty kod do warstwy.Zaraz po utworzeniu każdego artefaktu, należy go połączyć odpowiednią warstwę.
Nie masz się połączyć najczęściej klasy i inne przedmioty do warstwy ponieważ zaliczają się większe artefakty, takie jak przestrzenie nazw, które zostały już połączone do warstw.
Tworzenie nowego diagramu dla nowej funkcji.Zazwyczaj będzie, jeden lub więcej diagramów warstwa zawierająca opis całej aplikacji.W przypadku projektowania nowej funkcji w aplikacji, nie dodawaj do lub zmiany istniejących diagramów.Zamiast tego utworzyć swój własny diagram, który odzwierciedla nowe części kodu.Warstwy w nowy diagram może zawierać prezentacji, logiki domeny i warstwy bazy danych dla nowej funkcji.
Podczas tworzenia aplikacji, kodu zostaną sprawdzone, zarówno przed ogólny diagram i bardziej szczegółowego diagramu funkcji.
Edytuj układ do prezentacji i dyskusji
Aby łatwiej zidentyfikować warstw i terytoria zależne lub omówić je z członkami zespołu, należy zmodyfikować wygląd i układ diagramu w następujący sposób:
Zmienić rozmiary, kształty i położenia warstw.
Zmienić kolory warstw i zależności.
- Zaznacz jeden lub więcej warstw lub zależności, kliknij prawym przyciskiem myszy, a następnie kliknij Właściwości.W Właściwości okna, Edytuj Kolor właściwość.
Sprawdzanie poprawności kodu z diagramu
Po zakończeniu edycji diagramu, możesz można sprawdzić jego poprawność kodu ręcznie w dowolnym momencie lub automatycznie co czas uruchomienia kompilacji lokalnej lub Team Foundation Build.
Zobacz:
Obejmują warstwy sprawdzania poprawności podczas procesu budowania
Aktualizacja kodu odpowiadają typowi, Nowa architektura
Zazwyczaj błędy pojawią się sprawdzanie poprawności kodu przeciwko diagramie warstwy zaktualizowane po raz pierwszy.Te błędy mogą mieć kilka przyczyn:
Artefakty zostanie przypisany do warstwy nie tak.W takim przypadku należy przenieść artefakt.
Artefakty, takie jak class, używa innej klasy w sposób sprzeczny z Twojej architektury.W takim przypadku refaktoringu kodu w celu usunięcia zależności.
Aby usunąć te błędy, należy zaktualizować kod, dopóki nie ma więcej błędów nie pojawią się podczas sprawdzania poprawności.Zwykle jest procesem iteracyjnym.Aby uzyskać więcej informacji na temat tych błędów, zobacz Walidacja kodu przy użyciu diagramów warstwy.
[!UWAGA]
Jak opracowanie lub refaktoringu kod, może mieć nowe artefakty, aby utworzyć łącze do diagramu warstwy.Jednakże to może nie być konieczne, na przykład, gdy masz warstw, które reprezentują istniejących obszarów nazw, a nowy kod tylko dodaje więcej materiału do tych obszarów nazw.
W trakcie rozwoju można pominąć niektóre z raportowaną konfliktów podczas sprawdzania poprawności.Na przykład możesz chcieć Pomiń błędy, które są już adresowania lub które nie są istotne dla danego scenariusza określonego.Gdy zablokujesz błąd to dobrej praktyki, aby zalogować się elementu pracy Team Foundation.Aby wykonać to zadanie, zobacz Walidacja kodu przy użyciu diagramów warstwy.
Obejmują warstwy sprawdzania poprawności podczas procesu budowania
W celu zapewnienia, że przyszłe zmiany w kodzie są zgodne z diagramami warstwy, to warstwy sprawdzania poprawności, aby proces budowania standardowe rozwiązania.W każdym przypadku, gdy inni członkowie zespołu mogą zbudować rozwiązanie, wszelkie różnice między zależności w kodzie i na diagramie warstwa zostanie zgłoszone jako zbudować błędy.Aby uzyskać więcej informacji o dołączaniu warstwy sprawdzania poprawności podczas procesu budowania, zobacz Walidacja kodu przy użyciu diagramów warstwy.