Ocena:

Ta książka jest uważana za niezbędne i ponadczasowe odniesienie dla programistów, szczególnie koncentrując się na wzorcach projektowych. Wielu recenzentów podkreśla jej przydatność w różnych paradygmatach programowania i dogłębną eksplorację wzorców. Niektórzy zauważają jednak, że książka jest przestarzała, z przykładami głównie w C++ i Smalltalk, które mogą nie współgrać z nowszymi językami, takimi jak Python. Ogólnie rzecz biorąc, jest ona postrzegana jako kluczowe źródło informacji dla poważnych programistów, którzy chcą poprawić swoje umiejętności w zakresie architektury oprogramowania.
Zalety:⬤ Dobrze napisana i niezbędna do zrozumienia wzorców projektowych oprogramowania.
⬤ Ponadczasowe koncepcje, które są istotne w różnych paradygmatach programowania.
⬤ Szczegółowa eksploracja wzorców projektowych z wyróżnionymi zaletami i wadami.
⬤ Przydatne przy przechodzeniu od programowania niskopoziomowego do wysokopoziomowej architektury oprogramowania.
⬤ Wysokiej jakości wydanie drukowane z dobrymi diagramami.
⬤ Zdezaktualizowane przykłady skupione głównie na C++ i Smalltalk.
⬤ Styl pisania może sprawiać wrażenie akademickiego i suchego, przez co trudno jest pozostać zaangażowanym.
⬤ Niektórzy czytelnicy uważają, że książka jest zbyt złożona dla początkujących; wymaga wielokrotnego czytania, aby w pełni zrozumieć materiał.
⬤ Długie dyskusje mogą wydawać się niepotrzebne w nowoczesnym kontekście.
⬤ Brak nowoczesnych przykładów programowania może ograniczać praktyczne zastosowanie dla niektórych czytelników.
(na podstawie 680 opinii czytelników)
Design Patterns: Elements of Reusable Object-Oriented Software
Czerpiąc z bogatego doświadczenia w projektowaniu oprogramowania obiektowego, czterech najlepszych projektantów przedstawia katalog prostych i zwięzłych rozwiązań powszechnie występujących problemów projektowych. Wcześniej nieudokumentowane, te 23 wzorce pozwalają projektantom tworzyć bardziej elastyczne, eleganckie i ostatecznie wielokrotnego użytku projekty bez konieczności ponownego odkrywania samych rozwiązań projektowych.
Autorzy rozpoczynają od opisania czym są wzorce i w jaki sposób mogą one pomóc w projektowaniu oprogramowania zorientowanego obiektowo. Następnie systematycznie nazywają, wyjaśniają, oceniają i katalogują powtarzające się projekty w systemach obiektowych. Z Design Patterns jako przewodnikiem, dowiesz się jak te ważne wzorce pasują do procesu tworzenia oprogramowania i jak możesz je wykorzystać do rozwiązywania własnych problemów projektowych w najbardziej efektywny sposób.
Każdy wzorzec opisuje okoliczności, w których można go zastosować, kiedy można go zastosować w świetle innych ograniczeń projektowych, a także konsekwencje i kompromisy związane z użyciem wzorca w ramach większego projektu. Wszystkie wzorce są kompilowane z rzeczywistych systemów i opierają się na rzeczywistych przykładach. Każdy wzorzec zawiera również kod, który demonstruje, w jaki sposób można go zaimplementować w obiektowych językach programowania, takich jak C++ lub Smalltalk.