PHP_Obiekty_wzorce_narzedzia_Wydanie_V_phpob5.pdf
(
858 KB
)
Pobierz
Tytuł oryginału: PHP Objects, Patterns, and Practice, 5th Edition
Tłumaczenie: Piotr Cieślak
Projekt okładki: Studio Gravite / Olsztyn
Obarek, Pokoński, Pazdrijowski, Zaprucki
ISBN: 978-83-283-3553-0
Original edition copyright © 2016 by Matt Zandstra.
All rights reserved.
Polish edition copyright © 2017 by HELION SA.
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Materiały graficzne na okładce zostały wykorzystane za zgodą Shutterstock Images LLC.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/phpob5.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/phpob5
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
•
Kup książkę
•
Poleć książkę
•
Oceń książkę
•
Księgarnia internetowa
•
Lubię to! » Nasza społeczność
Spis treści
O autorze ...............................................................................................................15
O recenzencie technicznym ....................................................................................17
Podziękowania ......................................................................................................19
Wprowadzenie ......................................................................................................21
Część I.
Rozdział 1.
Obiekty ..............................................................................23
PHP — projektowanie i zarządzanie ......................................................................25
Problem ................................................................................................................................................. 25
PHP a inne języki programowania .................................................................................................... 26
O książce ............................................................................................................................................... 28
Obiekty ........................................................................................................................................... 28
Wzorce ............................................................................................................................................ 28
Narzędzia ....................................................................................................................................... 29
Nowości w piątym wydaniu ........................................................................................................ 30
Podsumowanie ..................................................................................................................................... 30
Rozdział 2.
PHP i obiekty .........................................................................................................31
Nieoczekiwany sukces obiektów w PHP .......................................................................................... 31
PHP/FI — u zarania języka ......................................................................................................... 31
PHP3 — składniowy lukier ......................................................................................................... 31
Cicha rewolucja — PHP4 ............................................................................................................ 32
PHP5 — nieuchronne zmiany .................................................................................................... 33
PHP7 — doganianie reszty świata .............................................................................................. 34
Debata obiektowa — za czy przeciw? ............................................................................................... 34
Podsumowanie ..................................................................................................................................... 35
Rozdział 3.
Obiektowy elementarz ..........................................................................................37
Klasy i obiekty ...................................................................................................................................... 37
Pierwsza klasa ................................................................................................................................ 37
Pierwszy obiekt (lub dwa) ........................................................................................................... 38
Definiowanie składowych klasy ......................................................................................................... 39
Kup książkę
Poleć książkę
SPIS TREŚCI
Metody .................................................................................................................................................. 41
Metoda konstrukcji obiektu ........................................................................................................ 42
Typy argumentów metod ................................................................................................................... 43
Typy elementarne ......................................................................................................................... 44
Typy obiektowe ............................................................................................................................. 47
Dziedziczenie ........................................................................................................................................ 50
Problemy związane z dziedziczeniem ........................................................................................ 51
Stosowanie dziedziczenia ............................................................................................................. 55
Zarządzanie dostępem do klasy — słowa public, private i protected ................................... 60
Podsumowanie ..................................................................................................................................... 64
Rozdział 4.
Zaawansowana obsługa obiektów ........................................................................65
Metody i składowe statyczne .............................................................................................................. 65
Składowe stałe ...................................................................................................................................... 68
Klasy abstrakcyjne ............................................................................................................................... 69
Interfejsy ................................................................................................................................................ 71
Cechy typowe ....................................................................................................................................... 73
Zadanie dla cech typowych ......................................................................................................... 73
Definiowanie i stosowanie cechy typowej ................................................................................. 74
Stosowanie wielu cech typowych ................................................................................................ 75
Łączenie cech z interfejsami ........................................................................................................ 75
Unikanie kolizji nazw metod za pomocą słowa insteadof ...................................................... 76
Aliasy metod cech typowych ....................................................................................................... 77
Cechy typowe z metodami statycznymi .................................................................................... 78
Dostęp do składowych klasy włączającej ................................................................................... 79
Definiowanie metody abstrakcyjnej cechy typowej ................................................................. 79
Zmiana dostępności metod cech typowych .............................................................................. 80
Późne wiązanie statyczne: słowo static ............................................................................................. 81
Obsługa błędów .................................................................................................................................... 84
Wyjątki ........................................................................................................................................... 85
Klasy i metody finalne ......................................................................................................................... 92
Klasa do obsługi błędów wewnętrznych ........................................................................................... 93
Przechwytywanie chybionych wywołań ........................................................................................... 94
Definiowanie destruktorów ................................................................................................................ 99
Wykonywanie kopii obiektów ......................................................................................................... 100
Reprezentacja obiektu w ciągach znaków ...................................................................................... 103
Wywołania zwrotne, funkcje anonimowe i domknięcia .............................................................. 104
Klasy anonimowe ............................................................................................................................... 108
Podsumowanie ................................................................................................................................... 109
Rozdział 5.
Narzędzia obiektowe ...........................................................................................111
PHP a pakiety ..................................................................................................................................... 111
Pakiety i przestrzenie nazw w PHP .......................................................................................... 111
Automatyczne wczytywanie kodu ............................................................................................ 119
Klasy i funkcje pomocnicze .............................................................................................................. 122
Szukanie klasy .............................................................................................................................. 123
Badanie obiektów i klas .............................................................................................................. 124
Pozyskiwanie ciągu pełnej nazwy klasy ................................................................................... 125
Badanie metod ............................................................................................................................. 126
6
Kup książkę
Poleć książkę
SPIS TREŚCI
Badanie składowych ................................................................................................................... 127
Badanie relacji dziedziczenia ..................................................................................................... 127
Badanie wywołań metod ............................................................................................................ 128
Interfejs retrospekcji — Reflection API .......................................................................................... 129
Zaczynamy ................................................................................................................................... 129
Pora zakasać rękawy ................................................................................................................... 130
Badanie klasy ............................................................................................................................... 132
Badanie metod ............................................................................................................................. 133
Badanie argumentów metod ..................................................................................................... 135
Korzystanie z retrospekcji ......................................................................................................... 136
Podsumowanie ................................................................................................................................... 139
Rozdział 6.
Obiekty a projektowanie obiektowe ...................................................................141
Czym jest projektowanie? ................................................................................................................. 141
Programowanie obiektowe i proceduralne .................................................................................... 142
Odpowiedzialność ...................................................................................................................... 145
Spójność ....................................................................................................................................... 146
Sprzęganie .................................................................................................................................... 146
Ortogonalność ............................................................................................................................. 146
Zasięg klas ........................................................................................................................................... 147
Polimorfizm ........................................................................................................................................ 148
Hermetyzacja ...................................................................................................................................... 149
Nieważne jak ....................................................................................................................................... 150
Cztery drogowskazy .......................................................................................................................... 151
Zwielokrotnianie kodu ............................................................................................................... 151
Przemądrzałe klasy ..................................................................................................................... 151
Złota rączka ................................................................................................................................. 151
Za dużo warunków ..................................................................................................................... 151
Język UML .......................................................................................................................................... 152
Diagramy klas .............................................................................................................................. 152
Diagramy sekwencji ................................................................................................................... 157
Podsumowanie ................................................................................................................................... 159
Część II. Wzorce .............................................................................161
Rozdział 7.
Czym są wzorce projektowe? Do czego się przydają? .........................................163
Czym są wzorce projektowe? ........................................................................................................... 163
Wzorzec projektowy .......................................................................................................................... 165
Nazwa ........................................................................................................................................... 165
Problem ........................................................................................................................................ 166
Rozwiązanie ................................................................................................................................. 166
Konsekwencje .............................................................................................................................. 166
Format wzorca według Bandy Czworga ......................................................................................... 166
Po co nam wzorce projektowe? ....................................................................................................... 167
Wzorzec projektowy definiuje problem .................................................................................. 167
Wzorzec projektowy definiuje rozwiązanie ............................................................................ 167
Wzorce projektowe są niezależne od języka programowania .............................................. 167
Wzorce definiują słownictwo .................................................................................................... 168
Wzorce są wypróbowane ........................................................................................................... 168
7
Kup książkę
Poleć książkę
Plik z chomika:
Ksiazki_20
Inne pliki z tego folderu:
Adobe_Dreamweaver_CS3_z_ASP_ColdFusion_i_PHP_Oficjalny_podrecznik_drcsop.pdf
(1344 KB)
Head_First_PHP_MySQL_Edycja_polska_hfphms.pdf
(4822 KB)
100_sposobow_na_PHP_100php.pdf
(518 KB)
Adobe_Flash_i_PHP_Biblia_flphbi.pdf
(524 KB)
AJAX_i_PHP_Tworzenie_interaktywnych_aplikacji_internetowych_ajaphp.pdf
(587 KB)
Inne foldery tego chomika:
3ds max
Access
Acrobat
After Effects
Agile - Programowanie
Zgłoś jeśli
naruszono regulamin