Wzorce projektowe to bardzo ważna część “zawodu” analityka i architekta oprogramowania. Dzisiaj kolejny raz studenci pytali o literaturę, więc postanowiłem poszperać na półce. O tym dlaczego powstały wzorce i jak sie je opisuje napisano wiele, nie będę więc powtarzał tego co na prawde łatwo znaleźć. Generalnie wzorce są to skatalogowane standardy i dobre praktyki .

Wzorce projektowe Książki

Większość obiektowych wzorców projektowych dotyczy kwestii (rozwiązywania problemów) technologicznych. Myślę, że większość frameworków (zestawy bibliotek środowiskowych) to implementacje wzorców opisanych w książkach wymienionych poniżej . Warto je więc poznać z tego choćby powodu, by rozumieć jak one działają i dlaczego są takie jakie są.

Nieco później powstały wzorce architektoniczne, takie jak sztandarowy MVC (Model-View-Controller). Te przydają się na etapie analizy i projektowania na wysokim poziomie abstrakcji.

Lektura tych pozycji pokazuje ewolucje pojęcia paradygmatu obiektowego i pojęcia obiektu. Tak zwane “stare”, implementacyjne podejście z początków technik obiektowych pojmowanie definiowało obiekt jako połączenie danych i funkcji. Ta definicja nadal pojawia się u wielu autorów. Obecnie raczej stosujemy definicję mówiącą, że obiekt mają określoną odpowiedzialność, reprezentują określone zachowanie [Shalloway].

Tak więc polecam lekturę poniższych pozycji, duża rezerwę w stosunku do podawanych definicji. Praktycznie wszystkie te książki to wiedza z końca lat 90-tych. Od tamtej pory, zmieniło się wiele detali, jednak ogólna zasada polegająca na hermetyzowaniu wszystkiego co się da i na tym, że obiekt to określona wąska specjalizowana odpowiedzialność, nadal jest na czasie. Historyczna definicja mówiąca, że obiekty to dane i funkcje je przetwarzające, została już nie raz “obalona” za sprawą wzorców takich jak service czy factory, wskazujących że należy z zasady oddzielać odpowiedzialność za utrwalanie danych i odpowiedzialność za ich tworzenie i przetwarzanie.

Tak więc w wolnej chwili zapraszam do lektury, a także do pytań i dyskusji pod tym tekstem.

Literatura

{5085975:DQVI65GH};{5085975:8P6M5STE};{5085975:TBT7B5D2},{5085975:NVN9AR49} harvard1 default asc 0 23076

Jarosław Żeliński

Jarosław Żeliński: Po ukończeniu WAT w 1989 roku pracownik naukowy katedry Transmisji Danych i Utajniania. Od roku 1991 roku, po rozpoczęciu pracy w roli analityka i projektanta systemów przetwarzania informacji, nieprzerwanie realizuje kolejne projekty dla urzędów, firm i organizacji. Od 1998 roku prowadzi także samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania systemów (modele jako przedmiot badań: ORCID), publikując je nieprzerwanie na tym blogu. Od 2005 roku, jako wykładowca akademicki wizytujący (nieetatowy), 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.). Od 2020 roku na stałe mieszka w Szkocji (Zjednoczone Królestwo), nadal realizuje projekty dla firm i organizacji także w Polsce.

Dodaj komentarz

Ta strona używa Akismet do redukcji spamu. Dowiedz się, w jaki sposób przetwarzane są dane Twoich komentarzy.