fbpx

Na nowo odkryj Diagramy Architektury

Dzisiaj przedstawię Ci jeden ciekawy program, jaki odkryłem na nowo. Przez ponad rok na projekcie używałem Visio do rysowania różnych architektur i diagramów uml-podobnych.

I przyszedł czas, że zmieniłem projekt. Nie musiałem już korzystać z Visio, więc wróciłem do mojego ulubionego edytora diagramów PlantUML. I tutaj wielkie zaskoczenie.

Po pierwsze wyjaśnię Ci, czym jest PlantUML i dlaczego lubię go używać, gdy mam rozrysować jakąś architekturę (obojętnie czy klasy, bazę, AWSa czy C4).

Otóż w PlantUML nie rysujesz kwadracików, tylko piszesz kod. I tutaj masz największą zaletę tego narzędzia. Wpisuje się on w praktykę Everything-as-Code. Możemy wrzucić go do repozytorium Gita i traktować jak inny kod. Już nie będzie on własnością wszechwładnego architekta, tylko posłuży całemu zespołowi.
I tak na przykład taki kod:

@startuml
     Front -> API : Login
     API -> AuthService : Check
     AuthService --> API : ok
     API --> Front : Token #74632
@enduml

Wygeneruje nam taki oto diagram:

Przykładowy diagram (1)

Wracając do mojego zaskoczenia. W PlantUML jego twórcy wprowadzili „Standard Library”, w których można dodawać własne zestawy ikon. I dodano ikony chmur AWS, Azure i GCP. I teraz nie muszę już korzystać z żadnych edytorów graficznych, w których rysuje się piękne, kolorowe diagramy, tylko jak na prawdziwego programistę przystało, mogę zakodować diagram. Nie jest on co prawda tak piękny, jak po szlifach firmowego grafika, ale jest przede wszystkim funkcjonalny i może pracować przy nim cały zespół, a nie tylko ja.

I teraz taki kod:

@startuml
     !include
          !include
     !include
     !include
     !include

     EC2(Smadex, "Smadex Service", " ")
     Users(Users, "Users", " ")
     TraditionalServer(AdExchange, "Ad Exchange", " ")
     Mobile(Mobile, "Publisher app or web", " ")

     Users -down-> Mobile: 1. Visits
     Mobile -right-> AdExchange: 2. Start auction
     AdExchange -right-> Smadex: 3. Bid request / response
     Smadex -left-> Mobile: 4. Show Ad
     Users -right-> Smadex: 5. Impression / click / install /
          event {request id}                                            
@enduml

Wygeneruje mi taki diagram:

Jeszcze jedna super sprawa. W Visual Studio Code dostępny jest plugin, który podczas edycji kody będzie pokazywał ci zmiany, jakie zrobiłeś w kodzie. Taki preview jest naprawdę super sprawą. Po edycji, w menu generujesz wszystkie diagramy do wyznaczonego katalogu.

Czy spodobało Ci się to narzędzie? Spróbuj, a będziesz zadowolony z efektów.

Szafrański Michał
Jako Architekt IT, nie tylko projektuję systemy informatyczne, ale również moje życie jest zaprojektowane w taki sposób, aby działać jak dobrze zaprojektowany system - jestem zawsze gotowy na wszelkie wyzwania i problemy. Podobnie jak każdy system, który projektuję, staram się być skalowalny i elastyczny, a czasem trudno przewidzieć, kiedy potrzebna będzie aktualizacja. Często słyszę pytanie: "Kiedy zostanie wydany update twojego życia?" A ja odpowiadam: "Kiedyś, ale zanim to nastąpi, muszę zebrać więcej danych i przeprowadzić odpowiednie testy." Moje życie to nie tylko kodowanie i projektowanie, ale również ciągłe doskonalenie i uczenie się nowych technologii. Nieustannie próbuję wprowadzać ulepszenia, zarówno w moim życiu osobistym, jak i zawodowym. A jeśli coś nie działa, nie boję się eksperymentować i próbować różnych rozwiązań, aby znaleźć najlepsze rozwiązanie. Nie jestem tylko architektem IT - jestem również architektem swojego życia, zaprojektowanym w taki sposób, aby działał jak dobrze zaprojektowany system.

Leave a Reply Text