Szkolenia dla programistów - BNS IT
Szkolenia AgileKonferencje Publikacje Klienci Zespół
 
 
Architektura aplikacji biznesowych
lista szkoleń
OPIS
Szkolenie Architektura aplikacji biznesowych to trzy dni, w czasie których uczestnicy będą mieli okazję poznać i uporządkować kluczowe zasady architektoniczne związane z tworzeniem złożonych aplikacji. Będzie ono niezwykle użyteczne dla doświadczonych programistów jak i osób, które pełnią lub w najbliższym czasie będą pełnić rolę architekta. Szkolenie architektura oprogramowania obejmuje tematykę głównych podejść architektonicznych takich jak: Microkernel, Warstwy, Model dziedzinowy czy Shared Repository, przeglądem konkretnych wzorców przydatnych w różnych obszarach tworzonej architektury – prezentacji, dostępu do danych, asynchroniczność czy zarządzania zasobami. Jednak szkolenie z architektury IT dotyczy także elementom procesowym – czyli jak przypadki użycia wpływają na architekturę, prototypowaniu jako narzędziu eksplorującym zastosowanie konkretnych rozwiązań, pragmatycznym dokumentowaniu architektury z uwzględnieniem podejść zwinnych oraz procesowi rozwoju architektury w systemie, który już istnieje. Dodatkowo omówione będą zagadnienia skalowania związane z rozwojem złożonych aplikacji.
Szkolenie z architektury to intensywne trzy dni, które pomoże Ci bardziej świadomie podejmować decyzje architektoniczne.
PROFIL UCZESTNIKA
• Uczestnik zna wzorce projektowe na poziomie szkolenia WP.
• Uczestnik posiada co najmniej dwuletnie doświadczenie w programowaniu systemów informatycznych.
PODSTAWOWY PROGRAM
Moduł 1. Strukturyzowanie kodu
Moduł 2. Architektury warstwy prezentacji
Moduł 3. Dostęp do danych
Moduł 4. Asynchroniczność i współbieżny dostęp
Moduł 5. Zarządzanie zasobami i wydajność
Moduł 6. Wprowadzenie do Domain-Driven Design
Moduł 7. Od wymagań do architektury
Moduł 8. Prototypy
Moduł 9. Dokumentowanie architektury
Moduł 10. Proces rozwoju architektury
Moduł 11. Standaryzowanie architektury
Moduł 12. Skalowanie na dużą skalę
SZCZEGÓŁOWY PROGRAM
Moduł 1. Strukturyzowanie kodu
  • Domain Model
  • Domain Object
  • Architektura warstwowa
  • Architektura Mikrokrernel
  • Architektura Shared Repository
  • Architektura Blackboard
  • Architektura Plug-In
  • Domeny obiektowe i nie obiektowe
Moduł 2. Architektury warstwy prezentacji
  • Autonomous View
  • Seperated Presentation
  • Synchronizacja stanu
  • Forms and Control
  • Model-View-Controller
  • Presentation Model, MVVM
  • Model-View-Presenter, Passive View
Moduł 3. Dostęp do danych
  • Data Access Layer
  • Table Data Gateway, Data Access Object
  • Active Record
  • Repository
  • Object/Relational Mapping
  • [opcja] JPA użyteczne wskazówki
  • [opcja] Deklaratywna obsługa transakcji
Moduł 4. Asynchroniczność i współbieżny dostęp
  • Observer
  • Mediator
  • Broker
  • Messaging
  • Publisher-Subscriber
  • Event, Event Log, Event Sourcing
  • Message, Message Channel, Message Router, Message Translator
  • Monitor Object
  • Half-Sync/Half-Async
  • Active Object, Future Result
Moduł 5. Zarządzanie zasobami i wydajność
  • Główne założenia
  • Lookup
  • Remote Proxy, Virtual Proxy
  • Task Coordinator
  • Resource Pool, Resource Cache
  • Flyweight
  • Transfer Object i jego odmiany
  • Transfer Object Assembler
  • Logika po stronie aplikacji czy bazy danych?
  • Business Delegate
  • Container
Moduł 6. Wprowadzenie do Domain-Driven Design
  • Co to jest dziedzina?
  • Izolacja dziedziny
  • Warstwy w DDD
  • Bloki budujące: Entity, Value Object, Aggregate, Repository, Factory, Service, Policy, Specification, Event
  • Bounded Context
  • Continuous Integration, Shared Kernel, Customer/Supplier, Conformist, Anticorruption Layer, Seperate Ways, Open Host Service
Moduł 7. Od wymagań do architektury
  • Przygotowanie i prowadzenie sesji
  • User stories i Use Cases
  • Modelowanie dziedziny, relacji, usług i innych bloków budujących
  • Od testów akceptacyjnych, przez testy jednostkowe do kodu – proces end-to-end
Moduł 8. Prototypy
  • Prototypy ekranów
  • Prototypy aplikacji
  • Spikes
Moduł 9. Dokumentowanie architektury
  • Nieformalne diagramy
  • Widoki 4+1
  • Widok procesu, widok logiczny, widok fizyczny, widok implementacji
  • Diagram komponentów
  • Diagram wdrożenia
  • Diagram klas
  • Konceptualny i implementacyjny model systemu
  • Diagram sekwencji
  • Elementy objaśniające i dokumentujące
  • Kiedy i jak używać modeli i diagramów?
  • Jak zdefiniować i wdrożyć zarządzanie dokumentacją związaną z architekturą?
Moduł 10. Proces rozwoju architektury
  • Główne problemy z rozwojem architektury
  • Modele organizacyjne
  • Architekt: Rola czy stanowisko
  • Zarządzanie ewolucją architektury
  • Projektowanie i wdrażanie procesu rozwoju architektury
  • Podejścia iteracyjne
  • Praktyki związane z rozwijaniem architektury
Moduł 11. Standaryzowanie architektury
  • Środowisko programistyczne
  • Konwencje kodowania
  • Przeglądy kodu
  • Proces standaryzacji
Moduł 12. Skalowanie na dużą skalę
  • Skalowanie horyzontalne i wertykalne – 10 strategii skalowania
  • NoSQL – bazy klucz-wartość, bazy dokumentowe, bazy grafowe, wide column
  • MapReduce
  • Command Query Responsibility Segregation

Szkolenia z architektury programowania

JAK ZAMÓWIĆ
< lista szkoleń
zamów szkolenie zamknięte
PARAMETRY SZKOLENIA
Czas trwania 3 x 8h
Forma zajęć Ćwiczenia - 70%, wykład - 30%
Kod ARCH
Wielkość grupy do 10 osób
 
 
Touching the Void
Radość tworzenia
oprogramowania
Pawel.Wrzesz.cz
BNS IT
Plac Przymierza 6/26
03-944 Warszawa