Cantitate/Preț
Produs

Advanced PHP Programming

Autor George Schlossnagle
en Limba Engleză Paperback – mar 2004
The definitive guide to developing large-scale PHP applications, written by the leading authority on the subject.
  • PHP has exploded in popularity, and is now starting to make inroads into large-scale business-critical Web systems.
  • So far, little has been written about how to scale PHP applications to the enterprise level.
  • Schlossnagle fills this void, providing the definitive guide to developing PHP applications for performance, stability, and extensibility.
Over the past three years PHP has evolved from being a niche language use to add dynamic functionality to small sites to a powerful tool making strong inroads into large-scale, business-critical Web systems. While there are many books on learning PHP and developing small applications with it, there is a serious lack of information on "scaling" PHP for large-scale, business-critical systems. Schlossnagles Advanced PHP Programming fills that void, demonstrating that PHP is ready for enterprise Web applications by showing the reader how to develop PHP-based applications for maximum performance, stability, and extensibility.
Citește tot Restrânge

Preț: 24888 lei

Preț vechi: 31110 lei
-20%

Puncte Express: 373

Preț estimativ în valută:
4768 5165$ 4089£

Comandă specială

Livrare economică 18-24 aprilie

Doresc să fiu notificat când acest titlu va fi disponibil:

Preluare comenzi: 021 569.72.76

Specificații

ISBN-13: 9780672325618
ISBN-10: 0672325616
Pagini: 672
Dimensiuni: 178 x 227 x 39 mm
Greutate: 1.03 kg
Ediția:1
Editura: Sams Publishing
Locul publicării:Indianapolis, United States

Descriere

Over the past three years PHP has evolved from being a niche language used to add dynamic functionality to small sites to a powerful tool making strong inroads into large-scale, business-critical Web systems.
 
The rapid maturation of PHP has created a skeptical population of users from more traditional "enterprise" languages who question the readiness and ability of PHP to scale, as well as a large population of PHP developers without formal computer science backgrounds who have learned through the hands-on experimentation while developing small and midsize applications in PHP.
 
While there are many books on learning PHP and developing small applications with it, there is a serious lack of information on "scaling" PHP for large-scale, business-critical systems. Schlossnagle's Advanced PHP Programming fills that void, demonstrating that PHP is ready for enterprise Web applications by showing the reader how to develop PHP-based applications for maximum performance, stability, and extensibility.

Cuprins



Introduction.
I. IMPLEMENTATION AND DEVELOPMENT METHODOLOGIES.
1. Coding Styles.
Choosing a Style That Is Right for You. Naming Symbols. Avoiding Confusing Code. Documentation. Further Reading. 2. Object-Oriented Programming through Design Patterns.
Introduction to OO Programming. A Brief Introduction to Design Patterns. Overloading. Further Reading. 3. Error Handling.
Handling Errors. Handling External Errors. Exceptions. When to Use Exceptions. Further Reading. 4. Implementing with PHP: Templates and the Web.
Smarty. Writing Your Own Template Solution. Further Reading. 5. Implementing with PHP: Standalone Scripts.
Introduction to the PHP Command-Line Interface (CLI). Handling Input/Output (I/O). Parsing Command-Line Arguments. Creating and Managing Child Processes. Writing Daemons. Combining What You've Learned: Monitoring. Services Further Reading. 6. Unit Testing.
An Introduction to Unit Testing. Writing Inline and Out-of-Line Unit Tests. Additional Features in PHPUnit. Test-Driven Design. Unit Testing in a Web Environment. Further Reading. 7. Managing the Development Environment.
Change Control. Managing Packaging. Further Reading. 8. Designing a Good API.
Design for Refactoring and Extensibility. Defensive Coding. Further Reading.II. CACHING.
9. External Performance Tunings.
Language-Level Tunings. Cache-Friendly PHP Applications. Content Compression. Further Reading. 10. Data Component Caching.
Caching Issues. Recognizing Cacheable Data Components. Choosing the Right Strategy: Hand-Made or Prefab Classes. Output Buffering. In-Memory Caching. DBM-Based Caching. Shared Memory Caching. Cookie-Based Caching. Integrating Caching into Application Code. Further Reading. 11. Computational Reuse.
Introduction by Example: Fibonacci Sequences. Caching Reused Data Inside a Request. Caching Reused Data Between Requests. Computational Reuse Inside PHP. Further Reading.III. DISTRIBUTED APPLICATIONS.
12. Interacting with Databases.
Understanding How Databases and Queries Work. Database Access Patterns. Tuning Database Access. Further Reading. 13. User Authentication and Session Security.
Simple Authentication Schemes. Registering Users. Maintaining Authentication: Ensuring That You Are Still Talking to the Same Person. Single Signon. Further Reading. 14. Session Handling.
Client-Side Sessions. Server-Side Sessions. 15. Building a Distributed Environment.
What Is a Cluster? Clustering Design Essentials. Caching in a Distributed Environment. Scaling Databases. Further Reading. 16. RPC: Interacting with Remote Services.
XML-RPC. SOAP. SOAP and XML-RPC Compared. Further Reading.IV. PERFORMANCE.
17. Application Benchmarks: Testing an Entire Application.
Passive Identification of Bottlenecks. Load Generators. Further Reading. 18. Profiling.
What Is Needed in a PHP Profiler. A Smorgasbord of Profilers. Installing and Using APD. A Tracing Example. Profiling a Larger Application. Spotting General Inefficiencies. Removing Superfluous Functionality. Further Reading. 19. Synthetic Benchmarks: Evaluating Code Blocks and Functions.
Benchmarking Basics. Building a Benchmarking Harness. Benchmarking Examples.V. EXTENSIBILITY.
20. PHP and Zend Engine Internals.
How the Zend Engine Works: Opcodes and Op Arrays. Variables. Functions. Classes. The PHP Request Life Cycle. Further Reading. 21. Extending PHP: Part I.
Extension Basics. An Example: The Spread Client Wrapper. Further Reading. 22. Extending PHP: Part II.
Implementing Classes. Writing Custom Session Handlers. The Streams API. Further Reading. 23. Writing SAPIs and Extending the Zend Engine.
SAPIs. Modifying and Introspecting the Zend Engine. Homework. Index.

Notă biografică

George Schlossnagle is a principal at OmniTI Computer Consulting, a Maryland-based tech company that specializes in high-volume Web and email systems. Before joining OmniTI, he led technical operations at several high-profile community Web sites, where he developed experience managing PHP in very large enterprise environments. He is a frequent contributor to the PHP community and his work can be found in the PHP core, as well as in the PEAR and PECL extension repositories.
Before entering the information technology field, George trained to be a mathematician and served a two-year stint as a teacher in the Peace Corps. His experience has taught him to value an interdisciplinary approach to problem solving that favors root-cause analysis of problems over simply addressing symptoms.

Textul de pe ultima copertă

Over the past three years PHP has evolved from being a niche language used to add dynamic functionality to small sites to a powerful tool making strong inroads into large-scale, business-critical Web systems. The rapid maturation of PHP has created a skeptical population of users from more traditional "enterprise" languages who question the readiness and ability of PHP to scale, as well as a large population of PHP developers without formal computer science backgrounds who have learned through the hands-on experimentation while developing small and midsize applications in PHP. While there are many books on learning PHP and developing small applications with it, there is a serious lack of information on "scaling" PHP for large-scale, business-critical systems. Schlossnagle's "Advanced PHP Programming" fills that void, demonstrating that PHP is ready for enterprise Web applications by showing the reader how to develop PHP-based applications for maximum performance, stability, and extensibility.