Wpis ten jest poświęcony recenzji kolejnej książki, którą bardzo polecam każdemu programiście zainteresowanemu nauką języka PHP – zwłaszcza dla tych, którzy interesują się tym tematem na poważnie.
Mowa tutaj o książce PHP5. Zaawansowane programowanie, której autorami są Edward Lecky-Thompson, Heow Eide-Goodman, Steven D. Nowicki oraz Alec Cove. Jest to moim zdaniem najlepsza pozycja dotycząca języka PHP na polskim rynku.
Dla kogo jest ta książka?
Zostało wydanych naprawdę wiele książek o programowaniu w PHP. Niektóre z nich są lepsze, inne gorsze, a większość po prostu słaba i wałkująca wciąż te same tematy :-)
Na szczęście od czasu do czasu trafia się taka książka, której czytanie jest czystą przyjemnością, z której możemy nauczyć się wielu nowych rzeczy, która rzuci światło na przeróżne tematy. Książka, w której zostanie opisany cały proces budowania profesjonalnych i komercyjnych aplikacji z wykorzystaniem PHP. I taka jest właśnie książka „PHP5. Zaawansowane programowanie”.
Odpowiadając na pytanie w nagłówku, książka ta jest dla osób mających już podstawową znajomość PHP – na pewno nie jest to lektura „na pierwszy raz”. Jest tutaj poruszonych także wiele tematów, nad którymi będą się głowić nawet średnio-zaawansowani programiści.
Poruszane tematy i ważniejsze rozdziały

- Wprowadzenie do programowania obiektowego
- Unified Modeling Language (UML)
- Obiekty zaczynają działać
- Wzorce projektowe
- Klasa Collection
- Klasa CollectionIterator
- Klasa GenericObject
- Warstwa abstrakcji dla bazy danych
- Interfejs fabryki
- Programowanie oparte na zdarzeniach
- Pliki dziennika i debugowanie
- SOAP
- Model, widok, kontroler (MVC)
- Komunikacja z użytkownikami
- Sesje i uwierzytelnianie
- Szkielet do testowania modułów
- Automat skończony i modyfikowalne pliki konfiguracyjne
- Studium przypadku – automatyzacja działu sprzedaży
Jak więc widać, książka porusza mnóstwo ciekawych tematów, opisując budowanie aplikacji od samego początku (tworzenie diagramów UML), przez dobór odpowiednich narzędzi (wybór frameworka, systemu CMS czy dobór odpowiednich klas z PEAR/PECL), na testach jednostkowych kończąc.
Poczytamy tutaj ponadto o popularnych wzorcach projektowych (MVC, Fabryka abstrakcyjna, Obserwator, Dekorator, Fasada, etc), metodykach programowania (Agile, XP), debugowaniu i testowaniu aplikacji, usługach sieciowych (SOAP), refaktoryzacji kodu czy protokole HTTP.
Jakby tego było mało, znajdziemy tutaj mnóstwo praktycznych przykładów (które niestety zawierają sporo błędów, choć zazwyczaj są one łatwe do wychwycenia).
Na sam koniec przez prawie 200 stron jest opisywany przykład z prawdziwego wydarzenia – stadium przypadku systemu automatyzującego sprzedaż produktów on-line. Niestety dział ten kompletnie nie przypadł mi do gustu :-).
Kilka słów podsumowania
Jest to wyjątkowa książka zawierająca multum wiedzy z zakresu PHP OOP. Polecam ją jedynie osobom znających się już trochę na rzeczy oraz tym, którzy mają za sobą sporo praktycznej wiedzy, a ich celem jest uporządkowanie wiedzy teoretycznej.
Mimo iż w książce można natrafić na sporo błędów i trafiają się działy, które są słabe i niedopracowane, to książka jest bardzo dobra. Ośmielę się nawet stwierdzić, że jest to najlepsza książka w języku polskim o PHP, jaką dane było mi przeczytać.
Z wypowiedzi na forum.php.pl można wywnioskować, że jest jeszcze lepsza książka o PHP w naszym ojczystym języku: PHP5. Obiekty, wzorce, narzędzia. Niestety od dłuższego czasu książka jest niedostępna, jak uprzejmie informuje Helion.
Czy ma ktoś może tą książkę na sprzedaż? Chętnie odkupiłbym, nawiasem mówiąc :)
Wracając jednak do „PHP5. Zaawansowane programowanie” – jest to w moim odczuciu najlepsza książka w języku polskim o profesjonalnym programowaniu w PHP.
Polecam kupić i przeczytać co najmniej raz :-)

