Obiekty to nie są pro­ste złą­czo­ne dane i logi­ka”. To obda­rzo­ne odpo­wie­dzial­no­ścią ele­men­ty więk­szej całości.

Mało jest w bran­ży inży­nie­rii opro­gra­mo­wa­nia ksią­żek, któ­re prak­tycz­nie się nie sta­rze­ją. Jedną z nich, moim zda­niem, jest książ­ka Object Design Roles, Responsibilities and Collaboration, auto­rzy: Rebecca Wirf-Brock i Alan McKean. Wydali ją pierw­szy raz w 2002 roku. Autorzy w bar­dzo przy­stęp­ny spo­sób poka­zu­ją zarów­no teo­re­tycz­ne jak i prak­tycz­ne aspek­ty ana­li­zy obiek­to­wej (OOA, Object-orien­ted Analysis ) i pro­jek­to­wa­nia obiek­to­we­go (OOD, Object-orien­ted design, łącz­nie czę­sto sto­so­wa­ny skrót OOAD). 

Mimo, że od pierw­sze­go wyda­nia minę­ło już 17 lat, książ­ka – a raczej opi­sa­ne w niej meto­dy – nie stra­ci­ły na aktu­al­no­ści i sku­tecz­no­ści. Cztery lata temu nawią­zy­wa­łem już do niej w arty­ku­le Jak iden­ty­fi­ko­wać kla­sy? (pole­cam tak­że arty­kuł i meto­dę: Class Responsibility Collaborator). Ogromną zale­tą tej książ­ki jest to, że dia­gra­my UML, ilu­stru­ją­ce oma­wia­ne w książ­ce przy­kła­dy, są popraw­ne i na wyso­kim pozio­mie abs­trak­cji, co powo­du­je, że mimo iż w 2015 spe­cy­fi­ka­cja UML ule­gła znacz­nym zmia­nom, dia­gra­my w książ­ce prak­tycz­nie nie stra­ci­ły nic na aktualności. 

Okładka polskiego wydania
Rebecca Wirf-Brock i Alan McKean, Projektowanie obiek­to­we, okład­ka pol­skie­go wydania.

W pierw­szej czę­ści auto­rzy opi­su­ją mecha­nizm jakim jest współ­dzia­ła­nie kom­po­nen­tów, zwra­ca­ją uwa­gę na fakt, że opro­gra­mo­wa­nie obiek­to­we to współ­pra­ca ele­men­tów (obiek­tów). Posługując się ana­lo­gią, jaką są urzą­dze­nia mecha­nicz­ne i kom­po­nen­ty sprzę­to­we każ­de­go kom­pu­te­ra, bar­dzo przy­stęp­nie opi­sa­no para­dyg­mat obiektowy. 

Kolejny roz­dział to opis tego czym jest rola i odpo­wie­dzial­ność kom­po­nen­tu, i jak poję­cie to poma­ga nam pro­jek­to­wać archi­tek­tu­rę oprogramowania. 

W kolej­nych roz­dzia­łach, opi­sa­no i poka­za­no, na wie­lu przy­kła­dach, jak sobie radzić z podej­mo­wa­niem decy­zji o archi­tek­tu­rze i z jakich wzor­ców i zasad korzystać. 

Jest to, ten wpis na blo­gu, nie tyle recen­zja, co gorą­ca zachę­ta do włą­cze­nia tej książ­ki do swo­jej biblio­te­ki. Niestety pol­skie wyda­nie już tyl­ko w anty­kwa­ria­tach, ale książ­ka – ory­gi­nal­ne wyda­nie – jest nadal dostęp­na w skle­pach internetowych.

Rebecca Wirfs-Brock, Alan McKean, Object Design Roles, Responsibilities, and Collaboration, Addison-Wesley 2003. 

P.S. Dlaczego ta książ­ką tyle lat cze­ka­ła na moją recen­zję? Bo od lat codzien­nie rano sobie mówi­łem: jutro na pew­no o niej napisze 🙂 

Na koniec dość świe­ża pre­zen­ta­cja autorki:

Jarosław Żeliński

Jarosław Żeliński: autor, badacz i praktyk analizy systemowej organizacji: Od roku 1991 roku, nieprzerwanie, realizuje projekty z zakresu analiz i projektowania systemów, dla urzędów, firm i organizacji. Od 1998 roku prowadzi samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania (modele jako przedmiot badań: ORCID). Od 2005 roku, jako nieetatowy wykładowca akademicki, prowadzi wykłady i laboratoria (ontologie i modelowanie systemów informacyjnych, aktualnie w Wyższej Szkole Informatyki Stosowanej i Zarządzania pod auspicjami Polskiej Akademii Nauk w Warszawie.) Oświadczenia: moje badania i publikacje nie mają finansowania z zewnątrz, jako ich autor deklaruję brak konfliktu interesów. Prawa autorskie: Zgodnie z art. 25 ust. 1 pkt. 1) lit. b) ustawy o prawie autorskim i prawach pokrewnych zastrzegam, że dalsze rozpowszechnianie artykułów publikowanych w niniejszym serwisie jest zabronione bez indywidualnej zgody autora (patrz Polityki Strony).

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.