Course Code: archpat
Duration: 14 hours
Overview:

Architectural Patterns (wzorce architektoniczne) to sprawdzone i uznane rozwiązania dla struktury i organizacji aplikacji lub systemów informatycznych. Te wzorce definiują kluczowe elementy, ich relacje i zasady projektowania, które można stosować w architekturze oprogramowania, aby rozwiązać powtarzalne problemy w projektowaniu systemów. Oto kilka popularnych wzorców architektonicznych: Model-View-Controller (MVC): - Podział aplikacji na trzy główne komponenty: Model (logika biznesowa i dane), View (interfejs użytkownika) i Controller (zarządzanie akcjami i logiką). Model-View-ViewModel (MVVM): - Podobny do MVC, z centralnym modelem danych, widokiem i modelem widoku, często stosowany w aplikacjach z interfejsem użytkownika. Layered (warstwowy): - Podział aplikacji na warstwy (na przykład warstwa prezentacji, warstwa logiki biznesowej, warstwa dostępu do danych) w celu segregacji funkcjonalności. Microservices (Mikrousługi): - Projektowanie systemu jako zestaw mniejszych, niezależnych i odizolowanych mikrousług, które komunikują się ze sobą za pomocą API. Event-Driven Architecture (EDA): - Architektura oparta na wydarzeniach, gdzie komponenty systemu reagują na zdarzenia i komunikują się za pomocą systemu przekazywania zdarzeń. Service-Oriented Architecture (SOA): - Struktura oparta na usługach, gdzie aplikacja jest budowana jako zestaw usług o różnych funkcjonalnościach, które są niezależne i mogą być używane przez różne części systemu. Component-Based Architecture: - Projektowanie systemu w oparciu o komponenty, gdzie poszczególne części są rozwijane niezależnie i mogą być używane wielokrotnie w różnych kontekstach. Hexagonal Architecture (Ports and Adapters): - Separacja logiki biznesowej od warstwy technicznej poprzez wydzielenie zewnętrznych i wewnętrznych interfejsów. Clean Architecture: - Koncentracja na separacji zależności i utrzymaniu czystości kodu poprzez hierarchię warstw, gdzie bardziej wewnętrzne warstwy nie zależą od zewnętrznych. Event Sourcing and CQRS (Command Query Responsibility Segregation): - Rozdzielenie operacji zapisu (komendy) i odczytu (zapytania) w aplikacjach poprzez wykorzystanie oddzielnych modeli. Wzorce architektoniczne zapewniają ogólne rozwiązania problemów architektonicznych, pomagając programistom w projektowaniu aplikacji lub systemów oprogramowania w sposób modułowy, skalowalny, elastyczny i łatwy w utrzymaniu. Każdy z tych wzorców ma swoje zalety i może być stosowany w zależności od specyfiki projektu.

Course Outline:

Jakie są rodzaje, style, domeny, wzorce architektury?

Przykładowe metodyki i frameworki architektury

  • TOGAF®
  • Zachman
  • TMForum FrameworkX

Przegląd niektórych stylów i wzorców architektury

  • Architektura wielowarstwowa (Layered architecture)
  • Command-Query Responsibility Segregation (CQRS)
  • Architektura oparta o Mikro-Jądro (Microkernel)
  • Model-View-Controler (MVC)
  • Service Oriented Architecture (SOA)
  • Architektura tablicowa (Blackboard Architecture)
  •  IoC, EDA, SEDA.

Projektowanie architektury systemów, jakość, ocena.

Elementy UML dla architekta.

Wzorce domenowe w ujęciu projektowych i architektonicznym

Wzorce .NET

  • Warstwy prezentacji
  • Warstwy logiki biznesowej
  • Warstwy integracji

Wzorce integracyjne EIP

  • Style integracji
  • System EAI
  • Wzorce dotyczące kanału komunikacji
  • Wzorce dotyczące konstrukcja wiadomości
  • Wzorce dotyczące routingu
  • Wzorce dotyczące transformacji
  • Wzorce dotyczące punktów końcowych
  •  Zarządzanie systemem EAI.

  Antywzorce.

Sites Published:

Polska - Architectural Patterns