1.062.389

kiadvánnyal nyújtjuk Magyarország legnagyobb antikvár könyv-kínálatát

A kosaram
0
MÉG
5000 Ft
a(z) 5000Ft-os
szállítási
értékhatárig

PHP fejlesztés felsőfokon

PHP 5

Szerző
Fordító
Lektor
Budapest
Kiadó: Kiskapu Kft.
Kiadás helye: Budapest
Kiadás éve:
Kötés típusa: Ragasztott papírkötés
Oldalszám: 685 oldal
Sorozatcím:
Kötetszám:
Nyelv: Magyar  
Méret: 23 cm x 19 cm
ISBN: 963-9301-80-9
Értesítőt kérek a kiadóról

A beállítást mentettük,
naponta értesítjük a beérkező friss
kiadványokról
A beállítást mentettük,
naponta értesítjük a beérkező friss
kiadványokról

Fülszöveg

Gyakorlati útmutató a PHP 5 nagyméretű webhelyek és alkalmazások fejlesztésében való használatához
A PHP világszerte ismert programnyelv, melynek segítségével gyorsan és megbízhatóan működő webhelyek építhetők ki. Ez azonban igazából csak a felszín, hiszen mára használata ennél jóval szélesebb körű - mind az alkalmazás környezetét, mind a megvalósított feladatot tekintve. Az Internettől a parancssorig a PHP programozók manapság olyan módokon aknázzák ki a nyelv lehetőségeit, melyekre senki nem gondolt akár egy évvel ezelőtt.
A PHP fejlesztés felsőfokon a tapasztalt fejlesztők számára nyújt segítséget olyan módszerek bemutatásával, melyekkel a PHP-t nagyméretű alkalmazásokban használhatják. A PHP 5 tárgyalása kapcsán szó esik az objektumközpontú programozás módszereiről, az egységtesztelésről, a biztonsági kérdésekről, a gyorstárak alkalmazásáról, a méretezhető elosztott webes alkalmazásokról, valamint a teljesítményfokozásról. Mindemellett hozzájutunk a PHP jelenleg elérhető... Tovább

Fülszöveg

Gyakorlati útmutató a PHP 5 nagyméretű webhelyek és alkalmazások fejlesztésében való használatához
A PHP világszerte ismert programnyelv, melynek segítségével gyorsan és megbízhatóan működő webhelyek építhetők ki. Ez azonban igazából csak a felszín, hiszen mára használata ennél jóval szélesebb körű - mind az alkalmazás környezetét, mind a megvalósított feladatot tekintve. Az Internettől a parancssorig a PHP programozók manapság olyan módokon aknázzák ki a nyelv lehetőségeit, melyekre senki nem gondolt akár egy évvel ezelőtt.
A PHP fejlesztés felsőfokon a tapasztalt fejlesztők számára nyújt segítséget olyan módszerek bemutatásával, melyekkel a PHP-t nagyméretű alkalmazásokban használhatják. A PHP 5 tárgyalása kapcsán szó esik az objektumközpontú programozás módszereiről, az egységtesztelésről, a biztonsági kérdésekről, a gyorstárak alkalmazásáról, a méretezhető elosztott webes alkalmazásokról, valamint a teljesítményfokozásról. Mindemellett hozzájutunk a PHP jelenleg elérhető bővítményeinek legteljesebb leírásához is. A könyv a gyakorlat oldaláról közelíti meg a feldolgozott témaköröket, érthetően elmagyarázva a legbonyolultabb fogalmakat is, mindig teljes, a való életből vett példákkal alátámasztva.
George Schlossnagle a PHP projekt egyik résztvevője, aki emellett több Apache modult is készített, és jelentős tapasztalatokkal rendelkezik a nagyméretű PHP webhelyek és alkalmazások kiépítése terén. Két évig vezető tervezőként segítette a CommunityConnect vállalat munkáját, ahol alkalma nyílt valóban nagyméretű rendszerek alkalmazására, melyekben naponta akár 130 millió dinamikus PHP kérelmet fogadtak. George két Zend Engine PHP bővítményt is írt, melyek célja a jelentős adatátvitelt lebonyolító webes rendszerek hatékonyságának növelése volt. Jelenlegi munkahelye az OmniTI Consulting, ahol nagyteljesítményű webes és e-mail megoldások tervezésén dolgozik.
„E könyv nagyszerű segítség a webes fejlesztők közösségének - egy páratlan szakmai tapasztalattal rendelkező szerzőtől. Mindenkinek ajánlom ezt a könyvet, aki nagyméretű webes alkalmazások fejlesztésével foglalkozik, vagy ezt tervezi a jövőben."
- Sterling Hughes, a PHP egyik fejlesztője
Az előszót Rasmus Lerdorf, a PHP atyja írta Vissza

Tartalom

Előszó
A szerzőről
Bevezetés
Megvalósítási és fejlesztési módszerek
1. fejezet Kódolási stílusok
A megfelelő stílus kiválasztása 4
A kód formázása és elrendezése 4
Behúzás 4
Sorhossz 7
Térközök használata 8
SQL irányelvek 8
Vezérlési szerkezetek 9
Kapcsos zárójelek a vezérlési szerkezetekben 9
A kapcsos zárójelek következetes használata 10
for vagy while vagy foreach? 11
Cikluson belüli vezérlés a break és a continue használatával 13
A mélyen egymásba ágyazott feltételek elkerülése 14
Névszimbólumok 14
Állandók és valódi globális változók 16
Hosszú életű változók 18
Ideiglenes változók 18
Több szóból álló nevek 19
Függvénynevek 19
Osztálynevek 20
Tagfüggvénynevek 20
Az elnevezések következetessége 20
A változónevek és sémanevek egyeztetése 21
A zavaros kódok elkerülése 22
Rövid címkék 22
HTML készítése echo-val 23
Következetes zárójelezés 23
Dokumentáció 24
Soron belüli megjegyzések 25
API dokumentáció 26
A phpDocumentor használata 27
További olvasmányok 31
2. fejezet Objektumközpontú programozás tervezési minták segítségével
Bevezetés az objektumközpontú programozásba 34
Öröklés 36
Egységbe zárás 37
Statikus tulajdonságok és tagfüggvények 38
Különleges tagfüggvények 39
Rövid bevezetés a tervezési minták használatába 41
Az Illesztő minta 41
A Sablon minta 46
Többalakúság 47
Felületek és típusjelzések 49
A Gyár minta 52
Az Egyke minta 54
Túlterhelés 56
Az SPL és a bejárók 62
__call() 68
__autoload() 71
További olvasmányok 71
3. fejezet Hibakezelés
A hibák kezelése 76
A hibák megjelenítése 76
A hibák naplózása 78
A hibák figyelmen kívül hagyása 79
Műveletek végzése hiba esetén 80
A külső hibák kezelése 81
Kivételek 85
Kivételhierarchiák használata 88
Típusos kivételek - egy példa 90
A kivételek láncolása 96
Konstruktoron belüli hibák kezelése 99
Felső szintű kivételkezelő beállítása 100
Adatérvényesítés 103
Mikor használjunk kivételeket? 108
További olvasmányok 108
4. fejezet Megvalósítás PHP nyelven: a sablonok és a Világháló
Smarty 110
A Smarty telepítése 111
Első Smarty sablonunk; Helló, Világ! 112
Lefordított sablonok a háttérben 113
A Smarty vezérlési szerkezetei 114
A Smarty függvényei és egyebek 117
Átmeneti tárolás a Smarty-val 120
A Smarty haladó szolgáltatásai 122
Saját sablonrendszer készítése 123
További olvasmányok 125
5. fejezet Megvalósítás PHP nyelven: önálló programok
A PHP parancssori felülete: bevezetés 129
A bemenet és kimenet kezelése 130
A parancssori argumentumok feldolgozása 132
Gyermekfolyamatok létrehozása és kezelése 135
A megosztott erőforrások bezárása 136
Változók megosztása 137
Takarítás a gyermekek után 137
Jelzések 139
SIGCHLD 140
SIGALRM 142
Egyéb szokványos jelzések 144
Démonok írása 144
A munkakönyvtár megváltoztatása 145
A kiváltságok feladása 146
A kizárólagosság biztosítása 147
A tanultak összefoglalása: figyelőszolgálat 147
További olvasmányok 157
6. fejezet Egységtesztelés
Bevezetés az egységtesztelésbe 161
Egységtesztek írása automatikus egységteszteléshez 161
Első egységtesztünk 161
Több teszt hozzáadása 163
Kódon belüli és kívüli egységtesztek 164
Kódon belüli tesztelés 164
Önálló tesztek 166
Egyszerre több teszt futtatása 168
A PHPUnit további szolgáltatásai 169
Beszédesebb hibaüzenetek létrehozása 170
Több tesztfeltétel hozzáadása 171
A setUp() és tearDown() tagfüggvények használata 173
Figyelők hozzáadása 174
Grafikus felület használata 176
Tesztvezérelt tervezés 176
A Flesch pontszámító 177
A Word osztály tesztelése 178
1. hibajelentés 186
Egységtesztelés webes környezetben 188
További olvasmányok 191
7. fejezet A fejlesztőkörnyezet kezelése
Változatkezelés 194
A CVS alapjai 195
A fájlok módosítása 198
A fájlok különbségeinek vizsgálata 199
Több fejlesztő egy munkán 202
Jelzőcímkék 204
Ágak 205
A fejlesztési és üzemi környezet fenntartása 206
Csomagkezelés 211
A kód csomagolása és kibocsátása 213
Bináris állományok csomagolása 216
Az Apache csomagolása 217
A PHP csomagolása 218
További olvasmányok 219
8. fejezet Hogyan tervezzünk jó API-t?
Újraépíthetőség és bővíthetőség 222
A logika függvényekbe zárása 223
Egyszerű osztályok és függvények használata 224
Névterek használata 225
A csatolás csökkentése 227
Védekező kódolás 228
Kódolási szabványok felállítása 229
Fertőtlenítési eljárások használata 229
További olvasmányok 231
Gyorstárak
9. fejezet Teljesítményfokozás külső módszerekkel
Teljesítményfokozás a nyelv szintjén 235
Fordítói gyorstárak 236
Nyelvi optimalizálók 239
HTTP gyorsítók 240
Fordított helyettesek 242
Teljesítményfokozás az operációs rendszer szintjén 246
Helyettes gyorstárak 247
Gyorstárbarát PHP alkalmazások 248
Tartalomtömörítés 253
További olvasmányok 254
RFC-k 254
Fordítói gyorstárak 254
Helyettes gyorstárak 255
Tartalomtömörítés 255
10. fejezet Adatösszetevők átmeneti tárolása
A gyorstárazással kapcsolatos kérdések 258
A gyorstárakban tárolható adatösszetevők felismerése 259
Saját vagy előre elkészített osztályok - melyiket válasszuk? 259
Gyorstárak a memóriában 263
Gyorstárak szerkezet nélküli fájlokban 263
A gyorstár méretének fenntartása 263
A gyorstárak egyidejű használata és összhangja 264
DBM alapú gyorstárak 271
A gyorstárak egyidejű elérése és összhangja 273
A tartalom érvénytelenítése és a gyorstárak karbantartása 273
Gyorstár a megosztott memóriában 278
Süti alapú gyorstárak 279
A gyorstár méretének kezelése 284
Egyidejű hozzáférés és az adatok összhangja 285
Gyorstárak használata az alkalmazásokban 285
Honlapok tárolása 288
Az Apache mod_rewrite modulja - tárolás okosan 295
Oldalak részeinek tárolása 299
Lekérdezések és gyorstárak 302
További olvasmányok 304
11. fejezet Számítási újrahasznosítás
Példa: a Fibonacci-sorozat 305
Újrahasznosítható adatok tárolása egy kérelmen belül 312
Újrahasznosítható adatok tárolása kérelmek között 315
Számítási újrahasznosítás a PHP-ben 319
PCRE-k 319
Elemszám és hossz 320
További olvasmányok 320
Elosztott alkalmazások
12. fejezet Adatbázisok használata
Ismerkedés az adatbázisok és lekérdezések működésével 324
Lekérdezések vizsgálata az EXPLAIN segítségével 327
Melyik lekérdezést javítsuk? 329
Adatbázis-elérési minták 331
Ad hoc lekérdezések 332
Az aktív rekord minta 333
A leképező minta 335
Az egyesített leképező minta 341
Az adatbázis-elérés hatékonyságának növelése 343
Az eredményhalmaz korlátozása 343
Lusta előkészítés 345
További olvasmányok 348
13. fejezet A felhasználók hitelesítése és a munkamenetek biztonsága
Egyszerű hitelesítési sémák
Egyszerű HTTP-hitelesítés 351
A lekérdezési karakterlánc csatolása 352
Sütik használata 352
Felhasználók bejegyzése 354
A jelszavak védelme 354
Védelem az emberi tényező kihasználása ellen 357
A hitelesítés fenntartása - hogyan győződjünk meg arról, hogy még mindig ugyanahhoz beszélünk? 358
A $_SERVER[REMOTE_IP] változatlanságának ellenőrzése 358
A $_SERVER[USER_AGENT] változatlanságának ellenőrzése 359
Titkosítatlan sütik használata 359
A követendő módszerekről 359
Titkosítás használata 360
Az elavulás megvalósítása 360
Felhasználók azonosítása 361
Hitelesítés a gyakorlatban - egy példa 361
Egyszeri feliratkozás 367
Az egyszeri feliratkozás megvalósítása 369
További olvasmányok 375
14. fejezet Munkamenetek kezelése
Ügyfél oldali munkamenetek 378
Munkamenetek megvalósítása sütik segítségével 379
A példa továbbfejlesztése 382
Kiszolgáló oldali munkamenetek 383
A munkamenet-azonosító nyomon követése 385
Beépített módszerek a munkameneti azonosítók követésére 385
A PHP munkamenetek alapjai 387
Saját munkamenet-kezelő módszerek 389
Szemétgyűjtés 395
Szemétgyűjtés a files kezelőben 396
Szemétgyűjtés az mm kezelőben 396
Szemétgyűjtés a MySession kezelőben 396
Ügyfél vagy kiszolgáló oldali munkamenetek - melyiket válasszuk? 397
Saját beépített munkamenet-kezelők megvalósítása 397
15. fejezet Elosztott környezet kiépítése
Mi is az a fürt? 399
Fürtök tervezése 402
Fő az előrelátás 403
Csapatjáték 404
A függvények névterei 404
Hivatkozzunk a szolgáltatásokra teljes leíró nevekkel! 405
Az erőforrások névterei 405
Tartalom elosztása a fürtökben 406
Vízszintes méretezés 407
Különleges célú fürtök 407
Gyorstárak elosztott környezetben 408
Központosított gyorstárak 411
Teljesen szétterített gyorstárak készítése a Spread segítségével 413
Adatbázisok méretezése 417
Mester-szolga rendszerekre épülő alkalmazások készítése 421
A többszörözés alternatívái 423
A relációs adatbázis-kezelő rendszerek alternatívái 424
További olvasmányok 425
16. fejezet RPC: Együttműködés távoli szolgáltatásokkal
XML-RPC 428
Egy kiszolgáló felépítése: a MetaWeblog API megvalósítása 430
Az XML-RPC szolgáltatások automatikus felderítése 435
SOAP 438
WSDL 441
A system.load átírása SOAP szolgáltatássá 443
Amazon webszolgáltatások és összetett típusok 446
Helyettes kód készítése 448
A SOAP és az XML-RPC összehasonlítása 449
További olvasmányok 450
SOAP 450
XML-RPC 450
Webnaplózás 451
Nyilvánosan elérhető webszolgáltatások 451
Teljesítmény
17. fejezet Teljesítménymérés: teljes alkalmazások tesztelése
A szűk keresztmetszetek passzív azonosítása 456
Terhelésképzők 458
ab 459
httperf 460
A napló alapú terhelésképző 461
A munkamenet-szimulátor 462
A valósághű adatképző 462
Daiquiri 463
További olvasmányok 464
18. fejezet Profilkészítés
A jó PHP profilkészítő titka 466
Profilkészítő alkalmazások - a bőség zavarával küszködve 466
Az APD telepítése és használata 467
Egy nyomkövetési példa 469
Egy nagyobb alkalmazás profiljának elkészítése 471
Az általános gyengeségek felderítése 477
A felesleges szolgáltatások eltávolítása 480
További olvasmányok 485
19. fejezet Szintetikus mérés: kódblokkok és függvények értékelése
A mérés alapjai 489
A mérési környezet kiépítése 489
A PEAR mérőcsomagja 490
A mérőrendszer kiépítése 493
Véletlen adatok lépésenkénti használata 494
A mérőrendszer terhelésének levonása 495
Egyéb időmérési adatok 497
Mérések a kódban 500
Mérési példák 501
Karakterek keresése a karakterláncok elején 502
Makrókifejtés 503
Beszúrás vagy összefűzés? 510
Bővíthetőség
20. fejezet A PHP és a Zend Engine titkai
A Zend Engine működése: opkódok és optömbök 516
Változók 522
Függvények 526
Osztályok 528
Az objektumkezelők 530
Objektumok létrehozása 531
Más fontos adatszerkezetek 531
A PHP kérelmek életciklusa 534
A SAPI réteg 535
A PHP magja 537
A PHP bővítési API 538
A Zend bővítési API 539
Összeáll a kép 541
21. fejezet A PHP bővítése: I. rész
A bővítmények alapjai 544
Bővítményváz készítése 545
Bővítmények felépítése és engedélyezése 548
Függvények használata 549
Egy egyszerű példa 549
A típusok és a memória kezelése 551
Karakterláncok feldolgozása 555
Más visszatérési makrók 556
Típusok kezelése 557
Típusátalakítások és elérési makrók 562
Erőforrások használata 566
Hibák visszaadása 571
Modulhorgok használata 572
Modulok indítása és leállítása 572
Modulok kikapcsolása 578
Kérelmek indítása és kikapcsolása 579
Egy példa: a Spread ügyfél burkolója 581
MINIT 582
MSHUTDOWN 583
A modul függvényei 583
A Spread modul használata 591
További olvasmányok 592
22. fejezet A PHP bővítése: II. rész
Osztályok megvalósítása 593
Új osztály létrehozása 595
Tulajdonságok hozzáadása 596
Osztályöröklés 598
Tagfüggvények hozzáadása 599
Konstruktorok hozzáadása 602
Kivételek kiváltása 603
Saját objektumok és privát változók 604
Gyártófüggvények használata 607
Felületek létrehozása és megvalósítása 608
Saját munkamenet-kezelők készítése 610
A folyamkezelő API 615
További olvasmányok 626
23. fejezet SAPI-k készítése és a Zend Engine bővítménye
A SAPI-król 627
A CGI SAPI 627
A CGI SAPI alkalmazás 635
A beágyazási SAPI 638
SAPI bemeneti szűrők 640
input_filter 641
A treat_data és a default_post_reader 645
A Zend Engine módosítása és belső vizsgálata 646
Figyelmeztetések helyett kivételek 646
Opkódok kiíratása 649
APD 652
APC 654
A Zend bővítmények visszahívható függvényei 654
Házi feladat 657
Tárgymutató 659

George Schlossnagle

George Schlossnagle műveinek az Antikvarium.hu-n kapható vagy előjegyezhető listáját itt tekintheti meg: George Schlossnagle könyvek, művek
Megvásárolható példányok
Állapotfotók
PHP fejlesztés felsőfokon
Állapot:
7.480 ,-Ft
37 pont kapható
Kosárba