Książka Patterns of Enterprise Application Architecture jest polecana w środowisku programistycznym. Skłoniło mnie to do jej przeczytania.

ZAWARTOŚĆ

Książka podzielona jest na dwie części :

  • The Narratives to wstęp teoretyczny w którym autor opisuje problemy i doradza z jakich wzorców można skorzystać.
  • The Patterns w tej części książki znajdują się opisy wzorców.

W książce przedstawione są następujące wzorce projektowe:

  • LAYERING
  • TRANSACTION SCRIPT
  • DOMAIN MODEL
  • TABLE MODULE
  • SERVICE LAYER
  • TABLE DATA GATEWAY
  • ROW DATA GATEWAY
  • ACTIVE RECORD
  • DATA MAPPER
  • UNIT OF WORK
  • LAZY LOAD
  • IDENTITY FIELD
  • FOREIGN KEY MAPPING
  • ASSOCIATION TABLE MAPPING
  • DEPENDENT MAPPING
  • EMBEDDED VALUE
  • SERIALIZED LOB
  • SINGLE TABLE INHERITANCE
  • CLASS TABLE INHERITANCE
  • CONCRETE TABLE INHERITANCE
  • INHERITANCE MAPPERS
  • METADATA MAPPING
  • QUERY OBJECT
  • REPOSITORY
  • MODEL VIEW CONTROLLER
  • PAGE CONTROLLER
  • FRONT CONTROLLER
  • TEMPLATE VIEW
  • TRANSFORM VIEW
  • TWO STEP VIEW
  • APPLICATION CONTROLLER
  • REMOTE FACADE
  • DATA TRANSFER OBJECT
  • OPTIMISTIC OFFLINE LOCK
  • PESSIMISTIC OFFLINE LOCK
  • COARSE-GRAINED LOCK
  • IMPLICIT LOCK
  • CLIENT SESSION STATE
  • SERVER SESSION STATE
  • DATABASE SESSION STATE
  • GATEWAY
  • MAPPER
  • LAYER SUPERTYPE
  • SEPARATED INTERFACE
  • REGISTRY
  • VALUE OBJECT
  • MONEY
  • SPECIAL CASE
  • PLUGIN
  • SERVICE STUB
  • RECORD SET

Struktura opisu wzorca przedstawionego przez autora wygląda następująco:

  • Wstęp z krótkim opisem wzorca
  • How It Works – wyjaśnienie działania wzorca
  • When to Use It – opis w jakim przypadku implementacja wzorca przyniesie nam korzyści.
  • Further Reading – w tej części autor poleca książki, które pomogą w pozyskaniu większej wiedzy na dany temat.

Wzorce są ilustrowane diagramami UML. Przykłady implementacji napisano w JAVA oraz C#.

Podczas pisania książki Patterns Of Enterprise Application Architecture, książka Domain-Driven Design: Tackling Complexity in the Heart of Software była jeszcze tworzona przez Erica. Martin Folwer czytał jej wczesny manuskrypt. Stwierdził że praca Evansa wygląda obiecująco. Następnie napisał przedmowę do książki Evansa datowaną na kwiecień 2003 roku czyli około pół roku po wydaniu swojej pozycji.

PODSUMOWANIE

Książka jest dobrze napisana. Jednak w trakcie jej czytania poczułem pewien niesmak, spodziewałem się nauczyć czegoś nowego, dlatego powtarzałem sobie w głowie: „ A może w następnym rozdziale znajdę coś co zmieni moje nastawienie do tej pozycji”. Niestety tak się nie stało. Oczywiście niektórych wzorców nie znałem jednak szansa, że uda mi się je kiedyś wykorzystać jest niewielka.

Analizując wzorce związanie z bazami danych. Przed oczami widziałem funkcjonalności frameworka NHibernate, którego głównym zadaniem jest wykonywanie mapowania obiektowo relacyjnego. W rozdziale 14. Web Presentation Patterns większość wzorców implementuje framework ASP.NET MVC. Wynika to z tego, że Fowler w swojej książce opisuje podstawowe wzorce wykorzystywane podczas tworzenia systemu klasy enterprise. Jego książka została wydana w 2002 roku. Przez ten czas otrzymaliśmy frameworki, które implementują te wzorce za nas. Przez co po przeczytaniu tej książki, możemy bardziej doceniać nasze narzędzia, które w znaczący sposób ułatwiają nam codzienną pracę.

DLA KOGO JEST TA KSIĄŻKA?

Martin Fowler przedstawia problemy, które napotkamy podczas tworzenia systemu klasy enterprise. Dlatego dla osób początkujących wiedza ta może się okazać przydatna. Należy jednak pamiętać, że część tych wzorców implementują za nas frameworki.

Zawarte w tej książce wzorce są bardzo podstawowe. Przez co nie jest ona przeznaczona dla doświadczonych programistów.  Należy ją traktować bardziej jako ciekawostkę niż pozycję obowiązkową.

Ta recenzja jest napisana z punktu widzenia programisty .NET. Więc jeżeli Twoje środowisko programistyczne nie posiada takich narzędzi. Wtedy wzorce zawarte w Patterns of Enterprise Application Architecture, mogą okazać się bardzo pomocne.

Zapraszam na recenzję polskiego przekładu książki Erica Evansa: Domain-Driven Design. Zapanuj nad złożonym systemem informatycznym

Zapraszam na inne recenzje: pisz-kod.pl/recenzje/

Informacje podstawowe:

Autor: Martin Fowler

Ilość stron: 533

Rok wydania: oryginał październik 2002; polski przekład 2005

Książka została wydana w języku polskim pod tytułem: Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe

Źródło okładki: http://www.informit.com/store/patterns-of-enterprise-application-architecture-9780321127426