Facebook - konwersja

Domain-Driven Design. Zapanuj nad złożonym systemem informatycznym - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
13 lipca 2015
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Produkt niedostępny.  Może zainteresuje Cię

Domain-Driven Design. Zapanuj nad złożonym systemem informatycznym - ebook

Zmień sposób myślenia o projektowaniu systemów informatycznych!

Tworzenie skomplikowanych systemów informatycznych wymaga nowego podejścia. Dotychczas stosowane metody przestają się sprawdzać i generują mnóstwo problemów. Odpowiedzią na nie jest DomainDriven Design, w skrócie DDD. W tym podejściu szczególny nacisk kładzie się na tworzenie obiektów dokładnie odzwierciedlających zachowanie ich odpowiedników istniejących w rzeczywistości. Dzięki temu projektowanie systemu można powierzyć ekspertom z danej branży, którzy niekoniecznie muszą być specjalistami w dziedzinie projektowania architektury systemów informatycznych.

Ta książka jest niezwykłym przewodnikiem, który wprowadzi Cię w świat DDD. Sięgnij po nią i poznaj elementy składowe projektu sterowanego modelem oraz cykl życia obiektu dziedziny. W trakcie lektury kolejnych rozdziałów dowiesz się, jak odkrywać pojęcia niejawne, stosować wzorce analityczne oraz wiązać wzorce projektowe z modelem. Ponadto zobaczysz, w jaki sposób utrzymywać integralność modelu, a na sam koniec zaznajomisz się ze strukturami dużej skali oraz łączeniem strategii. Ta książka jest doskonałą lekturą dla wszystkich osób chcących zrozumieć DomainDriven Design oraz zastosować to podejście w praktyce!

Dzięki tej książce:
  • zrozumiesz ideę DomainDriven Design
  • nauczysz się tworzyć modele
  • zadbasz o integralność stworzonego modelu
  • uporządkujesz system za pomocą struktur dużej skali
  • rozpoznasz momenty przełomowe w trakcie modelowania oraz na nie zareagujesz
  • wykorzystasz DDD w Twoim projekcie

Sprawdź, jak projektować skomplikowane systemy informatyczne!

Spis treści

Przedmowa (15)

Wstęp (17)

Podziękowania (27)

CZĘŚĆ I ZASTOSOWANIE MODELU DZIEDZINY (29)

Rozdział 1. Przetwarzanie wiedzy (35)

  • Elementy wydajnego modelowania (40)
  • Przetwarzanie wiedzy (41)
  • Ciągła nauka (44)
  • Projekt bogaty w wiedzę (45)
  • Modele dogłębne (48)

Rozdział 2. Komunikacja i użycie języka (51)

  • Język wszechobecny (52)
  • Modelowanie na głos (58)
  • Jeden zespół, jeden język (60)
  • Dokumenty i diagramy (63)
    • Spisane dokumenty projektowe (65)
    • Wykonywalna podstawa (68)
  • Modele objaśniające (68)

Rozdział 3. Związanie modelu z implementacją (71)

  • Projektowanie sterowane modelem (73)
  • Paradygmaty modelowania i narzędzia wspierające (76)
    • Projekt mechaniczny (79)
    • Projekt sterowany modelem (80)
  • Odkrywanie szkieletu - dlaczego modele są ważne dla użytkowników (83)
  • Modelowanie praktyczne (86)

CZĘŚĆ II ELEMENTY SKŁADOWE PROJEKTU STEROWANEGO MODELEM (89)

Rozdział 4. Wyizolowanie dziedziny (93)

  • Architektura warstwowa (94)
    • Powiązanie warstw (99)
    • Szkielety architektury (100)
  • To w warstwie dziedziny żyje model (101)
  • Antywzorzec inteligentnego interfejsu użytkownika (102)
  • Inne rodzaje izolacji (106)

Rozdział 5. Wyrażenie modelu w programie (107)

  • Asocjacje (109)
  • ENCJE (zwane również obiektami referencyjnymi) (115)
    • Modelowanie ENCJI (120)
    • Projektowanie operacji na tożsamości (121)
  • WARTOŚCI (125)
    • Projektowanie OBIEKTÓW WARTOŚCI (128)
    • Projektowanie asocjacji korzystających z WARTOŚCI (131)
  • USŁUGI (132)
    • USŁUGI a wyizolowana warstwa dziedziny (134)
    • Ziarnistość (136)
    • Dostęp do USŁUG (137)
  • MODUŁY (zwane również PAKIETAMI) (138)
    • MODUŁY zwinne (agile modules) (140)
    • Pułapki tworzenia pakietów na podstawie wymogów infrastruktury (142)
  • Paradygmaty modelowania (146)
    • Dlaczego dominuje paradygmat obiektowy? (146)
    • Nieobiekty w świecie obiektowym (149)
    • Utrzymywanie PROJEKTU STEROWANEGO MODELEM w przypadku łączenia paradygmatów (150)

Rozdział 6. Cykl życia obiektu dziedziny (153)

  • AGREGATY (155)
  • FABRYKI (166)
    • Wybór FABRYK oraz ich miejsc (169)
    • Kiedy potrzebujesz jedynie konstruktora (171)
    • Projektowanie interfejsu (173)
    • Gdzie mieści się logika niezmienników? (174)
    • FABRYKI ENCJI a FABRYKI WARTOŚCI (174)
    • Odtwarzanie zachowanych obiektów (175)
  • REPOZYTORIA (178)
    • Odpytywanie REPOZYTORIUM (184)
    • Kod klienta, w przeciwieństwie do programistów, ignoruje implementację REPOZYTORIUM (185)
    • Implementacja REPOZYTORIUM (186)
    • Praca ze szkieletami architektury (188)
    • Relacje z FABRYKAMI (189)
  • Projektowanie obiektów dla relacyjnych baz danych (190)

Rozdział 7. Użycie języka - przykład rozszerzony (195)

  • Prezentacja systemu logistycznego dla ładunku (195)
  • Izolowanie dziedziny - wprowadzenie aplikacji (198)
  • Rozróżnianie ENCJI oraz WARTOŚCI (199)
    • Role (rola) oraz inne atrybuty (201)
  • Projektowanie asocjacji w dziedzinie logistyki morskiej (201)
  • Granice AGREGATU (203)
  • Wybór REPOZYTORIÓW (204)
  • Przeglądanie scenariuszy (206)
    • Przykładowa funkcjonalność aplikacji - zmiana miejsca przeznaczenia ładunku (206)
    • Przykładowa funkcjonalność aplikacji - powtórzenie operacji (206)
  • Tworzenie obiektów (207)
    • FABRYKI oraz konstruktory klasy Cargo (207)
    • Dodanie operacji obsługi (208)
  • Przerwa na refaktoring - projekt alternatywny AGREGATU Cargo (209)
  • MODUŁY w modelu logistyki morskiej (213)
  • Nowa funkcjonalność - sprawdzanie przydziału (215)
    • Łączenie dwóch systemów (216)
    • Wzbogacanie modelu - segmentacja biznesu (217)
    • Poprawa wydajności (219)
  • Ostateczna wersja (220)

CZĘŚĆ III REFAKTORYZACJA KU GŁĘBSZEMU ZROZUMIENIU (223)

Rozdział 8. Moment przełomowy (229)

  • Historia pewnego przełomu (230)
    • Przyzwoity model, lecz wciąż... (230)
    • Moment przełomowy (231)
    • Model pogłębiony (233)
    • Otrzeźwiająca decyzja (236)
    • Zapłata (237)
  • Możliwości (237)
  • Koncentracja na podstawach (237)
  • Epilog - potok nowych spostrzeżeń (238)

Rozdział 9. Odkrywanie pojęć niejawnych (241)

  • Wyciąganie pojęć (242)
    • Nasłuchiwanie języka (242)
    • Analiza dziwnej implementacji (247)
    • Rozmyślanie nad sprzecznościami (252)
    • Czytanie książki (253)
    • Wielokrotne powtarzanie prób (255)
  • W jaki sposób zamodelować mniej oczywiste pojęcia (256)
    • Procesy jako obiekty dziedziny (259)
    • SPECYFIKACJA (261)
    • Zastosowanie SPECYFIKACJI w implementacji (264)

Rozdział 10. Projekt elastyczny (279)

  • INTERFEJSY UJAWNIAJĄCE ZAMIAR (283)
  • FUNKCJE BEZ EFEKTÓW UBOCZNYCH (287)
  • ASERCJE (293)
    • Teraz widzimy lepiej (296)
  • ZARYSY KONCEPCYJNE (298)
    • Nieprzewidziana zmiana (301)
  • KLASY SAMODZIELNE (304)
  • ZAMKNIĘCIE OPERACJI (307)
  • Projektowanie deklaratywne (310)
    • Języki właściwe dziedzinie (311)
  • Deklaratywny styl projektowania (312)
    • Rozszerzenie SPECYFIKACJI w stylu deklaratywnym (313)
    • Subsumpcja (318)
  • Kierunki ataku (321)
    • Definiowanie poddziedzin (321)
    • W miarę możliwości polegaj na ustalonym formalizmie (322)

Rozdział 11. Stosowanie wzorców analitycznych (333)

Rozdział 12. Powiązanie wzorców projektowych z modelem (349)

  • STRATEGIA (zwana również POLITYKĄ) (351)
  • KOMPOZYT (356)
  • Dlaczego nie wzorzec PYŁKU (FLYWEIGHT)? (361)

Rozdział 13. Refaktoryzacja ku głębszemu zrozumieniu (363)

  • Początek (364)
  • Zespoły poszukiwawcze (364)
  • Wcześniejsze odkrycia (365)
  • Projekt dla programistów (366)
  • Wyczucie czasu (367)
  • Kryzys jako źródło możliwości (368)

CZĘŚĆ IV PROJEKT STRATEGICZNY (369)

Rozdział 14. Utrzymywanie integralności modelu (373)

  • KONTEKST ZWIĄZANY (377)
    • Rozpoznawanie odprysków pojęciowych w KONTEKŚCIE ZWIĄZANYM (381)
  • CIĄGŁA INTEGRACJA (383)
  • MAPA KONTEKSTÓW (386)
    • Testowanie na granicach KONTEKSTU (393)
    • Organizacja oraz dokumentacja MAP KONTEKSTÓW (394)
  • Relacje pomiędzy KONTEKSTAMI ZWIĄZANYMI (395)
  • JĄDRO WSPÓŁDZIELONE (396)
  • ZESPOŁY PROGRAMISTYCZNE KLIENTA - DOSTAWCY (398)
  • KONFORMISTA (403)
  • WARSTWA ZAPOBIEGAJĄCA USZKODZENIU (406)
    • Projektowanie interfejsu WARSTWY ZAPOBIEGAJĄCEJ USZKODZENIU (408)
    • Implementacja WARSTWY ZAPOBIEGAJĄCEJ USZKODZENIU (408)
    • Opowieść ku przestrodze (412)
  • ODDZIELNE DROGI (414)
  • USŁUGA OTWARTEGO GOSPODARZA (417)
  • JĘZYK OPUBLIKOWANY (419)
  • Unifikacja słonia (422)
  • Wybór strategii kontekstu modelu (426)
    • Decyzja zespołowa lub wyższa (426)
    • Stawianie siebie w kontekście (427)
    • Przekształcanie granic (427)
    • Akceptacja tego, czego nie możemy zmienić - wyznaczanie zewnętrznych systemów (428)
    • Relacje z systemami zewnętrznymi (429)
    • System w projektowaniu (430)
    • Dostosowanie do specjalnych potrzeb przy użyciu odrębnych modeli (431)
    • Wdrożenie (432)
    • Kompromis (433)
    • Kiedy projekt już trwa (433)
  • Transformacje (434)
    • Łączenie KONTEKSTÓW - ODDZIELNE DROGI > JĄDRO WSPÓŁDZIELONE (434)
    • Łączenie KONTEKSTÓW - JĄDRO WSPÓŁDZIELONE > CIĄGŁA INTEGRACJA (437)
    • Wygaszanie starego systemu (438)
    • USŁUGA OTWARTEGO GOSPODARZA > JĘZYK OPUBLIKOWANY (440)

Rozdział 15. Destylacja (443)

  • DZIEDZINA GŁÓWNA (446)
    • Wybór RDZENIA dziedziny (449)
    • Kto wykonuje prace? (449)
  • Zwiększanie destylacji (451)
  • PODDZIEDZINY OGÓLNE (452)
    • Ogólny nie oznacza możliwy do ponownego wykorzystania (459)
    • Zarządzanie ryzykiem projektowym (459)
  • OPIS WIZJI DZIEDZINY (461)
  • RDZEŃ WYRÓŻNIONY (464)
    • Dokument destylacji (465)
    • RDZEŃ oznaczony (466)
    • Dokument destylacji jako narzędzie procesowe (467)
  • SPÓJNE MECHANIZMY (469)
    • OGÓLNE PODDZIEDZINY a SPÓJNE MECHANIZMY (471)
    • Kiedy MECHANIZM jest częścią DZIEDZINY GŁÓWNEJ (472)
  • Destylacja do stylu deklaratywnego (473)
  • RDZEŃ ODDZIELONY (474)
    • Koszt utworzenia RDZENIA ODDZIELONEGO (475)
    • Rozwijanie decyzji zespołowych (476)
  • RDZEŃ ABSTRAKCYJNY (481)
  • Głęboka destylacja modelu (482)
  • Wybór celów refaktoryzacji (483)

Rozdział 16. Struktury dużej skali (485)

  • PORZĄDEK EWOLUCYJNY (490)
  • METAFORA SYSTEMU (493)
    • Dlaczego nie potrzebujemy metafory "naiwnej" (495)
  • WARSTWY ODPOWIEDZIALNOŚCI (496)
    • W jaki sposób struktura wpływa na bieżący projekt? (502)
    • Wybór odpowiednich warstw (505)
  • POZIOM WIEDZY (511)
  • SZKIELET KOMPONENTÓW DOŁĄCZANYCH (521)
  • Jak ograniczająca powinna być struktura? (526)
  • Refaktoryzacja ku lepiej dopasowanej strukturze (527)
    • Minimalizm (528)
    • Komunikacja oraz samodyscyplina (528)
    • Restrukturyzacja przyczynia się do projektu elastycznego (529)
    • Destylacja zmniejsza obciążenie (530)

Rozdział 17. Łączenie strategii (531)

  • Łączenie struktur dużej skali z KONTEKSTAMI ZWIĄZANYMI (531)
  • Łączenie struktur dużej skali oraz destylacji (534)
  • Najpierw oszacowanie (536)
  • Kto określa strategię? (536)
    • Powstawanie struktury w trakcie tworzenia aplikacji (537)
    • Zespół architektoniczny skoncentrowany na kliencie (538)
  • Sześć podstawowych kryteriów dotyczących podejmowania strategicznych decyzji projektowych (538)
    • To samo dotyczy szkieletów technicznych (541)
    • Wystrzegaj się planu głównego (542)

ZAKOŃCZENIE (545)

Dodatek (553)

Wykorzystanie szablonów z tej książki (553)

Słownik (559)

Bibliografia (565)

Prawa do zdjęć (567)

Skorowidz (569)

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-0526-7
Rozmiar pliku: 10 MB

BESTSELLERY

Kategorie: