reklama - zainteresowany?

Refaktoryzacja domenowa. Przewodnik DDD po przekszta - Helion

Refaktoryzacja domenowa. Przewodnik DDD po przekszta
Autor: Alessandro Colla, Alberto Acerbis
Tytuł oryginału: Domain-Driven Refactoring: A hands-on DDD guide to transforming monoliths into modular systems and microservices
Tłumaczenie: Anna Czubska, Izabela
ISBN: 978-83-289-3327-9
stron: 292, Format: 165x235, okładka: mi
Data wydania: 2026-01-01
Księgarnia: Helion

Cena książki: 80,10 zł (poprzednio: 89,00 zł)
Oszczędzasz: 10% (-8,90 zł)

Nakład wyczerpany

Tagi: Inne - Programowanie | Wzorce projektowe

Wspó

Spis treści

Refaktoryzacja domenowa. Przewodnik DDD po przekształcaniu architektury monolitycznej w systemy modularne i mikrousługi -- spis treści

O autorach

O recenzentach

Przedmowa

Wprowadzenie

Część 1. Dlaczego warto stosować DDD, by stawić czoła złożoności?

  • Rozdział 1. Ewolucja projektowania zorientowanego na domenę
    • Ewolucja podejść do tworzenia oprogramowania
    • Dotychczasowa historia DDD
    • Czym jest projektowanie zorientowane na domenę (DDD)?
    • Jak DDD zmienia podejście do problemu?
    • Podsumowanie
  • Rozdział 2. Kwestia złożoności - przestrzeń problemów i rozwiązań
    • Radzenie sobie ze złożonością
      • Framework Cynefin
      • Teoria pozostałości
      • EventStorming
    • Przestrzeń problemów i przestrzeń rozwiązań
      • Celowe odkrywanie
      • Pięć poziomów niewiedzy
      • Przezwyciężanie luk w wiedzy
      • Spacer deleuzjański
    • Podejmowanie decyzji i błędy poznawcze
      • Zrozumienie systemu 1 i systemu 2
      • Znaczenie systemu 1 i systemu 2 w refaktoryzacji
      • Typowe błędy poznawcze w refaktoryzacji
      • Przykład praktyczny - refaktoryzacja odziedziczonego systemu
    • Podsumowanie
  • Rozdział 3. Wzorce strategiczne
    • Zrozumiała definicja terminów rozwiązuje połowę problemu
      • Czym jest kontekst ograniczony?
    • Podział domeny na sensowne granice
      • Mapowanie kontekstu
    • Zarządzanie komunikacją między kontekstami ograniczonymi
      • Znaczenie prawidłowej komunikacji
      • Wzorce komunikacji
      • Końcowa mapa kontekstu
    • Podsumowanie
  • Rozdział 4. Wzorce taktyczne
    • Wymagania techniczne
    • Zrozumienie wzorców taktycznych w DDD
      • Encje
      • Obiekty wartości
      • Agregaty
      • Repozytoria
      • Fabryki
    • Usługi i moduły
      • Usługi domenowe
      • Usługi aplikacji
      • Kluczowe różnice między usługami domenowymi a usługami aplikacji
      • Moduły
      • Moduły w refaktoryzacji złożonych systemów
    • Zdarzenia domenowe i integracyjne
      • Znaczenie zdarzeń we współczesnych aplikacjach
      • Zdarzenia domenowe
      • Zdarzenia integracyjne
      • Przypadki użycia w naszej aplikacji browarniczej
      • Przepływ zdarzeń i przepływ informacji
    • Podsumowanie

Część 2. Refaktoryzacja odziedziczonych systemów

  • Rozdział 5. Wprowadzenie do zasad refaktoryzacji
    • Teoria przed praktyką
      • Wyzwania ścisłego powiązania usług sprzedaży i magazynowania
      • Wdrażanie CI/CD i obserwowalności w procesie refaktoryzacji
    • Filary bezpiecznych zmian
      • Analiza struktury rozwiązania
      • Zrozumienie testów i ich roli w refaktoryzacji
      • Zastosowanie piramidy testów - cały przykład
    • W kierunku przejrzystszego i łatwiejszego w utrzymaniu kodu
      • Zasada pojedynczej odpowiedzialności
      • Zasada otwarte-zamknięte
      • Zasada odwrócenia zależności
      • Wzorzec strategii
    • Podsumowanie
  • Rozdział 6. Wyjście z chaosu
    • Identyfikacja kluczowych domen
    • Zrozumienie otoczenia biznesowego
      • Mapowanie obecnej bazy kodu
      • Identyfikacja kontekstów ograniczonych
    • Definiowanie przejrzystych interfejsów
    • Budowa modularnego monolitu
      • Mediator kontra Fasada
    • Testowanie i stabilizacja
    • Podsumowanie
  • Rozdział 7. Integracja zdarzeń z CQRS
    • Rozumienie roli komunikatów w monolicie modularnym
      • Polecenia a zdarzenia
      • Zdarzenia domenowe i integracyjne
    • Rozdzielenie odpowiedzialności poleceń i zapytań
      • Bezpośrednia synchronizacja baz danych
      • Odpytywanie bazy danych
      • Widoki zmaterializowane
      • Współdzielona baza danych
      • Wyzwalacze bazodanowe
    • Rejestrowanie zmian stanu za pomocą zdarzeń
      • Integracja wzorca Event Sourcing w architekturze CQRS
      • Dodawanie zdarzeń do naszego systemu ERP
    • Testowanie modularnego monolitu sterowanego zdarzeniami
      • Testy specyfikacji
      • Przykład 1. Tworzenie zamówienia sprzedaży
      • Przykład 2. Aktualizacja dostępności
    • Podsumowanie
  • Rozdział 8. Refaktoryzacja bazy danych
    • Usługi modułowe i potrzeba refaktoryzacji baz danych
    • Zasady refaktoryzacji baz danych i wyznaczania granic domen
      • Ewolucyjne projektowanie baz danych
      • Wzorce refaktoryzacji baz danych
    • Wyodrębnianie usług i zarządzanie spójnością danych
    • Przejście na nową architekturę i zapewnienie wydajności
      • Wzorce dostępu do danych rozproszonych
      • Optymalizacja wydajności zapytań poprzez buforowanie i indeksowanie
    • Testowanie i wdrażanie
      • Strategie testowania
      • Strategie wdrażania modularnych baz danych
    • Podsumowanie
  • Rozdział 9. Wzorce DDD do ciągłej integracji i ciągłej refaktoryzacji
    • Integracja DDD z CI/CD
      • Dlaczego CI/CD korzysta z DDD?
      • Łączenie biznesu i technologii
      • Tworzenie pętli informacji zwrotnych
    • Wzorce i techniki skutecznego refaktoryzowania zgodnie z DDD
      • Podział kontekstów ograniczonych
      • Łączenie kontekstów ograniczonych
    • Ciągła refaktoryzacja w kontekście DDD
    • Automatyzacja i narzędzia
      • SonarQube i GitLab - przykład
      • Przykład GitHub Actions
    • Podsumowanie

Część 3. Przejście od monolitu do mikrousług

  • Rozdział 10. Kiedy i dlaczego warto przejść na architekturę mikrousług?
    • Odkrywanie architektury mikrousług
      • Przejście z monolitu modularnego na mikrousługi
      • Monolit kontra mikrousługi
    • Uzasadnienie stosowania mikrousług
    • Wyzwania i aspekty do rozważenia
      • Błędne założenia w obliczeniach rozproszonych
      • Korzyści i kompromisy związane z przejściem na mikrousługi
    • Ocena gotowości do wdrożenia mikrousług
      • Oznaki gotowości do mikrousług
      • Rola monolitu modułowego jako fundamentu
      • Dlaczego wzorzec mediatora nie wystarcza do pełnego rozdzielenia komponentów?
      • Przejście na komunikację sterowaną zdarzeniami
      • Przygotowanie do mikrousług
    • Strategie przechodzenia na mikrousługi
    • Podsumowanie
  • Rozdział 11. Obsługa zdarzeń i ich ewolucji
    • CQRS, Event Sourcing i błędne pojęcie o strumieniowaniu zdarzeń
    • Cykl życia zdarzeń - dlaczego rozwój ma znaczenie?
    • Wdrażanie CQRS+ES - pokonywanie wyzwań technicznych i kulturowych
    • Strategie wersjonowania zdarzeń
      • Proste wersjonowanie zdarzeń
      • Jak zarządzać ewolucją zdarzeń poza agregatem?
    • Podsumowanie
  • Rozdział 12. Zarządzanie złożonością - zaawansowane podejścia do procesów biznesowych
    • Złożoność zawsze była obecna
      • Protokół zatwierdzania dwufazowego
      • Wzorzec Saga
    • Choreografia a orkiestracja
      • Choreografia
      • Orkiestracja
      • Wybór między choreografią a orkiestracją
    • Zrozumienie różnicy między menedżerami procesów a sagami
      • Dlaczego wzorce Saga i Menedżer procesu nie są zamienne?
      • Jak protokół 2PC odnosi się do wzorców Saga i Menedżer procesu?
    • Obsługa błędów i odzyskiwanie transakcji w sagach
      • Transakcje kompensujące i strategie odzyskiwania
      • Nieprzerwane wykonywanie - zapewnienie niezawodności w sagach
      • Sagi oparte na zdarzeniach
    • Podsumowanie

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2026 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.