Domain Driven Design Zapanuj nad zlozonym systemem informatycznym.pdf

(1747 KB) Pobierz
Tytuł oryginału: Domain-Driven Design: Tackling Complexity in the Heart of Software
Tłumaczenie: Rafał Szpoton
Projekt okładki: Studio Gravite / Olsztyn
Obarek, Pokoński, Pazdrijowski, Zaprucki
ISBN: 978-83-283-0525-0
Authorized translation from the English language edition, entitled: DOMAIN-DRIVEN DESIGN:
TACKLING COMPLEXITY IN THE HEART OF SOFTWARE;
ISBN 0321125215; by Eric Evans; published by Pearson Education, Inc,
publishing as Addison Wesley.
Copyright © 2004 by Eric Evans.
All rights reserved. No part of this book may by reproduced or transmitted in any
form or by any means, electronic or mechanical, including photocopying, recording or
by any information storage retrieval system, without permission from Pearson Education, Inc.
Polish language edition published by HELION S.A. Copyright © 2015.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi
bądź towarowymi ich właścicieli.
Materiały graficzne na okładce zostały wykorzystane za zgodą Shutterstock Images LLC.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/domdri.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/domdri
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
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
7
Kup książkę
Poleć książkę
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
8
SPIS TRE CI
Kup książkę
Poleć książkę
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
SPIS TRE CI
9
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin