w , ,

FajneFajne Dobre!Dobre! ŚwietnieŚwietnie Że co?Że co? WnerwWnerw SmuteczekSmuteczek

Wzorce projektowe – praktyczny przewodnik

wzorce projektowe java

Dobry programista zawsze myśli o stworzeniu elastycznego projektu, które będzie łatwe w utrzymaniu, oraz będące w stanie poradzić sobie ze zmieniającymi się warunkami (technologicznymi czy biznesowymi). Dlatego jeśli chcemy, aby kod naszej aplikacji spełniał opisane warunki, to musimy wykorzystywać najlepsze praktyki, którymi między innymi są wzorce projektowe.

Czym są wzorce projektowe?

Wzorce projektowe pozwalają wykorzystywać wiedzę i doświadczenie zdobyte przez innych programistów, którzy mierzyli się z częstymi problemami implantacyjnymi. Podczas pracy nad nimi zmuszeni byli zadać sobie dużo trudu, przejść przez wiele pułapek i na tej drodze wykreować najlepsze możliwe rozwiązanie.

Dlatego tak powstało kilkadziesiąt różnych rozwiązań ujętych w kilku kategoriach, stanowiących wzorcowe przykłady rozwiązania sytuacji problemowych w kodzie.

Podsumowując i mówiąc krótko – wzorce projektowe to zbiór najlepszych praktyk z gotowymi rozwiązaniami dla wybranych problemów napotykanych w trakcie projektowania rozwiązań zorientowanych obiektowo.

Z czego składa się wzorzec projektowy?

  • nazwy
  • opisu problemu, który rozwiązuje
  • rozwiązania
  • konsekwencji jego użytkowania

Klasyfikacja wzorców projektowych

Wzorce projektowe są poklasyfikowane w zależności od realizowanej odpowiedzialności. Sama klasyfikacja jest teoretycznym ujęciem, jednak warto o niej wiedzieć:

klasyfikacja wzorców projektowych
Podstawowa klasyfikacja wzorców projektowych

Oraz przykłady przynależności wzorców do poszczególnych grup wraz z krótkim opisem grupy:

Wzorce kreacyjne

Dotyczą sposób tworzenia klas, metod, oraz typów danych.

Wzorce strukturalne

Dotyczą zależności powiązanych ze sobą obiektów.

Wzorce behawioralne

Dotyczą zachowania współpracujących obiektów.

Jednak niektóre klasyfikacje uwzględniają jeszcze inne kategorie, np. wzorców współbieżności.

Korzyści płynące ze stosowania wzorców projektowych

  • Spójność z koncepcją SOLID – stosujące wzorce projektowe zyskujesz pewność, że Twoje rozwiązanie pokrywa najlepsze praktyki programowania zorientowanego obiektowo.
  • Pozwalają utrzymać Clean Code projektu.
  • Łatwość komunikacji – znacznie prościej jest przekazać koledze nazwę wzorca jaki ma zaimplementować niż starać się to wyjaśnić opisowo.

Wnioski – czy zawsze stosować wzorce projektowe?

Przede wszystkim częstym problemem wielu programistów, którzy poznali wybrany wzorzec jest dopatrywanie się (często na siłę) możliwości wdrożenia danego wzorca. Stąd wzięło się bardzo popularne powiedzenie w IT – dla kogoś kto ma młotek, to wszystko wydaje się być gwoździem. Dlatego wzorce projektowe mimo tego, że stanowią świetny toolbox programisty, to stosowane ich w niewłaściwy sposób może przynieść tylko szkody.
Warto też uważać na modyfikowanie wzorców – często mamy nieodparte wrażenie, że jakiś wzorzec sami napisalibyśmy lepiej. Przeważnie jest to tylko zgubne wrażenie. Więc o ile nie jesteśmy geniuszami programowania, to zaufajmy bardzo doświadczonym ekspertom. To oni przewidzieli możliwe konsekwencje i opracowali możliwe najlepsze, sprawdzone rozwiązania 😊

Implementacja wybranych wzorców projektowych – wideo

Zapraszam Cię do obejrzenia mojego materiału wideo w ramach, którego przedstawiam ogólną koncepcję wzorców projektowych. Omawiam w nich również popularne wzorce projektowe:
Observer, Decorator, Factory Method, Singleton;

Napisane przez Przemysław Bykowski

Aktywny programista i energiczny trener. Specjalizuje się w Spring Boot i uczę go w ramach AkademiaSpring.pl. Po godzinach udzielam się na YouTubach. Więcej o mnie.

Dodaj komentarz

logowanie zdarzeń spring boot

Logowanie zdarzeń – SLF4J [Spring Boot #27]

Angular, Spring Boot, Google Cloud Platform

Angular + Spring Boot + Google Cloud Platform! [Zapowiedź webinaru]