- Full Description
PHP Objects Patterns and Practice, Fourth Edition is revised and updated throughout.The book begins by covering PHP's object-oriented features. It introduces key topics including class declaration, inheritance, reflection and much more. These provide the fundamentals of the PHP's support for objects. It also introduces some principles of design.This edition introduces new object relevant features such as traits, reflection extension additions, callable type hinting, improvements to exception handling, and many smaller language enhancements.
The next section is devoted to design patterns. These describe common problems and their solutions. The section describes the design principles that make patterns powerful. It covers many of the classic design patterns and includes chapters on enterprise and database patterns.
The last segment of the book covers the tools and practices that can help turn great code into a successful project. The section shows how to manage multiple developers and releases with git, how to build and install using Phing and PEAR. It also explores strategies for automated testing and build.
In addition to discussing the latest developments in build, test, and continuous integration, this section keeps pace with best practice in version control by focusing on Git, increasingly the developer's system of choice.
Taken together these three elements: object fundamentals, design principles, and best practice will help the reader develop elegant and rock solid systems.
PHP Objects and Patterns:
- Describes and demonstrates PHP's built-in object-oriented features
- Breaks down the principles of object-oriented design, explaining key design patterns using practical examples.
- Discusses the tools and practices necessary for developing, testing and deploying exemplary applications.
What youll learnYou will:
- Learn to work with object fundamentals: writing classes and methods, instantiating objects, creating powerful class hierarchies using inheritance
- Master advanced object-oriented features, including static methods and properties, managing error conditions with exceptions, and creating abstract classes and interfaces.
- Understand and use design principles to deploy objects and classes effectively in your projects.
- Learn about design patterns, their purpose, structure and the underlying principles that govern them.
- Discover a set of powerful patterns that you can deploy in your own projects
- Learn about the tools and practices that can guarantee a successful project including unit testing; version control, build, installation and package management; and continuous integration.
Who this book is forThis book is suitable for anyone with at least a basic knowledge of PHP who wants to use its object-oriented features in their projects.
Those who already know their interfaces from their abstracts may well still find it hard to use these features in their projects. They will benefit from the book's emphasis on design. They will learn how to choose and combine the participants of a system; how to read design patterns and how to use them in their code.
Finally this book is for PHP coders who want to learn about the practices and tools (version control, testing, continuous integration, etc) that can make projects safe, elegant and stable.
- Table of Contents
Table of Contents
- PHP: Design and Management
- PHP and Objects
- Object Basics
- Advanced Features
- Object Tools
- Objects and Design
- What Are Design Patterns? Why Use Them?
- Some Pattern Principles
- Generating Objects
- Patterns for Flexible Object Programming
- Performing and Representing Tasks
- Enterprise Patterns
- Database Patterns
- Good (and Bad) Practice
- An Introduction to PEAR and Pyrus
- Generating Documentation with phpDocumentor
- Version Control
- Testing with PHPUnit
- Automated Build with Phing
- Continuous Integration
- Objects, Patterns, and Practice
- App A: Bibliography
- App B: A Simple Parser
If you think that you've found an error in this book, please let us know about it. You will find any confirmed erratum below, so you can check if your concern has already been addressed.No errata are currently published