Facebook - konwersja

PHP. Wzorce projektowe - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
20 października 2013
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
49,00

PHP. Wzorce projektowe - ebook

Ciągły rozwój języka PHP sprawia, że za jego pomocą można już tworzyć bardzo zaawansowane aplikacje. Wszyscy programiści wiedzą, że wraz ze wzrostem skomplikowania tworzonego oprogramowania konieczne staje się zastosowanie sprawdzonych, przemyślanych i przetestowanych rozwiązań. Takim zbiorem najlepszych metod rozwiązywania typowych problemów są wzorce projektowe. Zawitały one również do świata PHP!

Na rynku znajdziesz wiele książek poświęconych wzorcom projektowym, jednak dotyczą one zazwyczaj języków Java lub C. Ta wyjątkowa książka zajmuje się wzorcami w języku PHP. W trakcie lektury poznasz podstawowe założenia programowania obiektowego, wzorce czynnościowe, kreacyjne i strukturalne. Przekonasz się też, jak bardzo wzrośnie jakość Twojego kodu, jeżeli do komunikacji z bazą danych MySQL zastosujesz wzorzec Proxy. Książka ta jest obowiązkową lekturą każdego programisty piszącego w języku PHP. Zobacz, jak dobry może być Twój kod!

Wzorce projektowe w PHP to:

  • najlepsze rozwiązania typowych problemów
  • sposób na poprawę jakości Twojego kodu
  • łatwiejsza komunikacja z bazą danych MySQL
  • mniej błędów w Twoich aplikacjach

Przekonaj się, jak tworzyć kod wysokiej jakości!



Spis treści

Przedmowa (13)

I. WSTĘP DO WZORCÓW PROJEKTOWYCH (19)

1. PHP a programowanie obiektowe (21)

  • Wstęp do średnio zaawansowanego i zaawansowanego programowania (21)
  • Dlaczego programowanie zorientowane obiektowo? (22)
    • W jaki sposób ułatwić rozwiązywanie problemów? (22)
    • Modularyzacja (23)
  • Klasy i obiekty (23)
    • Zasada jednej odpowiedzialności (24)
    • Konstruktory w PHP (24)
  • Klient jako klasa żądająca (25)
  • Co z wydajnością? (28)
    • Szybkość tworzenia i modyfikacji rozwiązań (28)
    • Szybkość w zespole (29)
  • Problemy z programowaniem sekwencyjnym i proceduralnym (29)
    • Programowanie sekwencyjne (29)
    • Programowanie proceduralne (30)
    • Zapłać teraz lub zapłać potem (30)

2. Podstawowe zagadnienia programowania obiektowego (33)

  • Abstrakcja (33)
    • Klasy abstrakcyjne (34)
    • Właściwości i metody abstrakcyjne (35)
    • Interfejsy (37)
    • Interfejsy i stałe (38)
    • Podpowiadanie typów: prawie typowanie (39)
  • Enkapsulacja (41)
    • Enkapsulacja w życiu codziennym (41)
    • Zapewnienie enkapsulacji poprzez widoczność (42)
    • Funkcje ustawiające i pobierające (44)
  • Dziedziczenie (46)
  • Polimorfizm (47)
    • Jedna nazwa, wiele implementacji (49)
    • Polimorfizm wbudowany we wzorcach projektowych (50)
  • Tylko spokojnie (50)

3. Podstawowe zagadnienia wzorców projektowych (51)

  • Wprowadzenie do MVC (51)
  • Podstawowe zasady wzorców projektowych (53)
    • Pierwsza zasada wzorców projektowych (54)
    • Wykorzystanie typów interfejsowych przy podpowiadaniu typów (54)
    • Klasy abstrakcyjne i ich interfejsy (55)
    • Druga zasada wzorców projektowych (58)
    • Przykład złożoności przy wykorzystaniu klienta (58)
    • Delegacja: różnica między MA a JEST (61)
  • Wzorce projektowe jako wielka ściąga (61)
    • Organizacja wzorców projektowych (62)
  • Wybór wzorca projektowego (63)
    • Czym spowodowana jest konieczność powtórnego projektowania? (63)
    • Co się zmienia? (63)
    • Czym różnią się wzorce projektowe od frameworków? (64)

4. Wykorzystanie UML-a we wzorcach projektowych (65)

  • Po co język modelowania UML? (65)
  • Diagramy klas (66)
  • Symbole uczestnictwa (67)
  • Notacja relacji (69)
    • Relacje asocjacji (69)
    • Relacje agregacji (71)
    • Relacje implementacji i dziedziczenia (72)
    • Relacje tworzenia (74)
    • Relacje wielokrotne (74)
  • Diagramy obiektów (75)
  • Diagramy interakcji (76)
  • Rola diagramów i notacji w programowaniu obiektowym (77)
  • Narzędzia dla UML (77)
  • Inne diagramy UML (78)

II. WZORCE KREACYJNE (79)

5. Wzorzec Metoda Fabrykująca (81)

  • Czym jest wzorzec Metoda Fabrykująca? (81)
  • Kiedy korzystać z Metody Fabrykującej (82)
  • Minimalistyczny przykład (83)
    • Praca z fabryką (83)
    • Klient (85)
  • Wprowadzanie zmian w klasach (86)
    • Dodanie elementów graficznych (86)
    • Koordynowanie produktów (87)
    • Zmiany w produkcie tekstowym (88)
    • Zmiany w produkcie graficznym (89)
    • Dodanie nowych produktów i parametryzowanych żądań (90)
    • Jedna fabryka i wiele produktów (91)
    • Nowe fabryki (91)
    • Nowe produkty (92)
    • Klient z parametrem (93)
    • Klasy pomocnicze (94)
    • Diagram plików (95)
    • Produkty się zmieniają, interfejs zostaw w spokoju (96)

6. Wzorzec Prototyp (99)

  • Czym jest wzorzec Prototyp? (99)
  • Kiedy wykorzystać wzorzec Prototyp (99)
  • Funkcja klonująca (100)
    • Podczas klonowania konstruktor nie jest wywoływany (102)
    • W funkcji konstruktora nie powinny być wykonywane żadne zadania (103)
  • Minimalistyczny przykład (103)
    • Badanie muszek owocówek (103)
  • Dodanie do prototypu elementów obiektowych (106)
    • Nowoczesna organizacja biznesowa (107)
    • Enkapsulacja w interfejsie (107)
    • Implementacje interfejsów (108)
    • Klient (111)
    • Wprowadzanie zmian, rozbudowa funkcjonalności (113)
    • Dynamiczne tworzenie instancji obiektów (114)
  • Wzorzec Prototyp w świecie PHP (115)

III. WZORCE STRUKTURALNE (117)

7. Wzorzec Adapter (119)

  • Czym jest wzorzec Adapter? (119)
  • Kiedy wykorzystywać wzorzec Adapter (120)
  • Wzorzec Adapter zaimplementowany przy wykorzystaniu dziedziczenia (122)
    • Minimalistyczny przykład adaptera klas: wymiana walut (122)
  • Wzorzec Adapter zaimplementowany przy wykorzystaniu kompozycji (126)
    • Z komputerów osobistych na urządzenia mobilne (126)
    • Adaptery a zmiany (133)

8. Wzorzec Dekorator (135)

  • Czym jest wzorzec Dekorator? (135)
  • Kiedy wykorzystywać wzorzec Dekorator (136)
  • Minimalistyczny przykład dekoratora (137)
    • Interfejs komponentu (137)
    • Interfejs dekoratora (137)
    • Konkretny komponent (138)
    • Konkretne dekoratory (139)
    • Klient (141)
  • Co z opakowywaniem? (142)
    • Opakowywanie prymitywów (142)
    • Klasy i funkcje opakowujące wbudowane w PHP (142)
    • Wzorce projektowe polegające na opakowywaniu (143)
  • Dekoratory z wieloma komponentami (143)
    • Wiele konkretnych komponentów (144)
    • Konkretne komponenty z wieloma stanami i wartościami (144)
    • Usługi randkowe dla programistów (145)
  • Interfejs użytkownika (UI) w HTML (150)
    • Klasa Client przekazująca dane z HTML (154)
    • Od nazwy zmiennej do instancji obiektu (155)
    • Dodawanie dekoracji (155)

IV. WZORCE CZYNNOŚCIOWE (157)

9. Wzorzec Metoda Szablonowa (159)

  • Czym jest wzorzec Metoda Szablonowa? (159)
  • Kiedy wykorzystywać wzorzec Metoda Szablonowa (160)
  • Wykorzystanie wzorca Metoda Szablonowa z obrazami i podpisami: minimalistyczny przykład (160)
    • Klasa abstrakcyjna (161)
    • Klasa konkretna (161)
  • Klasa Client (162)
  • Zasada Hollywood (162)
  • Wykorzystanie Metody Szablonowej z innymi wzorcami projektowymi (164)
    • Zmniejszenie obowiązków klienta (165)
    • Uczestnicy wzorca Metoda Szablonowa (166)
    • Uczestnicy wzorca Metoda Fabrykująca (167)
  • Hak we wzorcu Metoda Szablonowa (169)
    • Ustawienie haka (171)
    • Implementacja haka (171)
    • Klasa Client i uruchomienie haka (172)
  • Mały, ale potężny wzorzec Metoda Szablonowa (174)

10. Wzorzec Stan (175)

  • Czym jest wzorzec Stan? (175)
  • Kiedy korzystać ze wzorca Stan (176)
  • Maszyna stanowa (177)
  • Światło włączone i wyłączone: minimalistyczna implementacja wzorca (178)
    • Kontekst jest najważniejszy (178)
    • Stany (181)
    • Klasa Client wykonuje żądanie przez Context (182)
  • Dodawanie stanów (183)
    • Zmiana interfejsu (183)
    • Zmiana stanów (184)
    • Aktualizacja klasy Context (186)
    • Zaktualizowana klasa Client (187)
  • Nawigator: więcej wyborów i komórek (188)
    • Ustalenie szablonu stanów dla macierzy (189)
    • Przygotowanie interfejsu (189)
    • Kontekst (190)
    • Stany (192)
    • Klient wybiera ścieżkę (197)
  • Wzorzec Stan a PHP (198)

V. MYSQL I WZORCE PROJEKTOWE PHP (199)

11. Uniwersalna klasa połączeniowa i wykorzystanie wzorca Proxy dla bezpieczeństwa (201)

  • Prosty interfejs i klasa do połączeń MySQL (201)
    • Interfejs w ciąży (202)
    • Uniwersalna klasa połączeniowa MySQL i zmienne statyczne (202)
    • Prosty klient (204)
  • Proxy zabezpieczające proces logowania (204)
    • Stworzenie formularza rejestracji (205)
    • Implementacja proxy logowania (209)
  • Proxy i bezpieczeństwo w prawdziwym świecie (214)

12. Elastyczny wzorzec projektowy Strategia (217)

  • Algorytmy enkapsulujące (217)
    • Różnica między wzorcami Strategia i Stan (218)
    • Żadnych poleceń warunkowych, proszę (219)
    • Rodzina algorytmów (219)
  • Minimalistyczny wzorzec Strategia (219)
    • Klasa Client i skrypty wyzwalające (221)
    • Klasa Context i interfejs strategii (223)
    • Konkretne strategie (224)
  • Rozszerzony wzorzec Strategia uwzględniający bezpieczeństwo danych i parametryzowane algorytmy (227)
    • Klasa pomocnicza odpowiedzialna za bezpieczeństwo danych (227)
    • Dodanie parametru do metody algorithm (230)
    • Tabela survey (230)
    • Moduły wprowadzania danych (231)
    • Klasa Client wzywa pomocy (235)
    • Drobna, ale ważna zmiana w klasie Context (237)
    • Konkretne strategie (237)
  • Elastyczny wzorzec Strategia (242)

13. Wzorzec projektowy Łańcuch Odpowiedzialności (245)

  • Podaj dalej (245)
  • Łańcuch Odpowiedzialności w aplikacji pomocy technicznej (247)
    • Utworzenie i uzupełnienie tabeli odpowiedzi (247)
    • Łańcuch Odpowiedzialności pomocy technicznej (251)
  • Zautomatyzowany Łańcuch Odpowiedzialności i Metoda Fabrykująca (256)
    • Łańcuch Odpowiedzialności i żądania w oparciu o datę (256)
    • Metoda Fabrykująca wieńczy dzieło (261)
  • Łatwość aktualizacji (265)

14. Budowa systemu CMS za pomocą wzorca Obserwator (267)

  • Wbudowane interfejsy Obserwatora (267)
  • Kiedy korzystać ze wzorca Obserwator (268)
  • Wykorzystanie SPL we wzorcu Obserwator (269)
    • SplSubject (270)
    • SplObserver (270)
    • SplObjectStorage (271)
    • Konkretny podmiot SPL (271)
    • Konkretny obserwator SPL (272)
    • Klient SPL (273)
  • Czyste PHP i wzorzec Obserwator (274)
    • Implementacja klas abstrakcyjnych Subject i ConcreteSubject (274)
    • Interfejs Observer i wiele konkretnych obserwatorów (276)
    • Klient (277)
  • Budowa prostego systemu CMS (278)
    • Infrastruktura programu (279)
    • Obserwator dla wielu urządzeń (283)
  • Myślenie obiektowe (294)

Skorowidz (295)

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-246-7458-9
Rozmiar pliku: 6,7 MB

BESTSELLERY

Kategorie: