PHP objects, patterns, and practice

The 5th edition of this popular book has been fully updated for PHP 7, including replacing the PEAR package manager with Composer, and new material on Vagrant and PHP standards. It provides a solid grounding in PHP's support for objects, it builds on this foundation to instill core principles o...

Full description

Main Author: Zandstra, Matt.
Other Authors: SpringerLink (Online service)
Format: eBook
Language: English
Published: Berkeley, CA : Apress, 2016.
Berkeley, CA : 2016.
Physical Description: 1 online resource (583 pages).
Edition: 5th ed.
Series: Expert's voice in Web development.
Subjects:
Summary: The 5th edition of this popular book has been fully updated for PHP 7, including replacing the PEAR package manager with Composer, and new material on Vagrant and PHP standards. It provides a solid grounding in PHP's support for objects, it builds on this foundation to instill core principles of software design and then covers the tools and practices needed to develop, test and deploy robust code. PHP Objects, Patterns, and Practice begins by covering PHP's object-oriented features. It introduces key topics including class declaration, inheritance, reflection and much more. The next section is devoted to design patterns. It explains the principles that make patterns powerful. The book 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 manage builds and dependencies with Composer. It also explores strategies for automated testing and continuous integration. Taken together, these three elements: object fundamentals, design principles, and best practice, will help the reader develop elegant and rock solid systems.
Item Description: At a Glance; Contents; About the Author; About the Technical Reviewer; Acknowledgments; Introduction; Part I: Objects; Chapter 1: PHP: Design and Management; The Problem; PHP and Other Languages; About This Book; Objects; Patterns; Practice; What's New in the Fifth Edition; Summary; Chapter 2: PHP and Objects; The Accidental Success of PHP Objects; In the Beginning: PHP/FI; Syntactic Sugar: PHP 3; PHP 4 and the Quiet Revolution; Change Embraced: PHP 5; PHP 7: Closing the Gap; Advocacy and Agnosticism: The Object Debate; Summary; Chapter 3: Object Basics; Classes and Objects.
A First ClassA First Object (or Two); Setting Properties in a Class; Working with Methods; Creating a Constructor Method; Arguments and Types; Primitive Types; Primitive Types Matter: An Example; Taking the Hint: Object Types; Inheritance; The Inheritance Problem; Working with Inheritance; Constructors and Inheritance; Invoking an Overridden Method; Public, Private, and Protected: Managing Access to Your Classes; Accessor Methods; The ShopProduct Classes; Summary; Chapter 4: Advanced Features; Static Methods and Properties; Constant Properties; Abstract Classes; Interfaces; Traits.
A Problem for Traits to SolveDefining and Using a Trait; Using More than One Trait; Combining Traits and Interfaces; Managing Method Name Conflicts with insteadof; Aliasing overridden trait methods; Using static methods in traits; Accessing Host Class Properties; Defining Abstract Methods in Traits; Changing Access Rights to Trait Methods; Late Static Bindings: The static Keyword; Handling Errors; Exceptions; Throwing an Exception; Subclassing Exception; Cleaning Up After try/catch Clauses with finally; Final Classes and Methods; The Internal Error Class; Working with Interceptors.
Defining Destructor MethodsCopying Objects with __clone(); Defining String Values for Your Objects; Callbacks, Anonymous Functions, and Closures; Anonymous Classes; Summary; Chapter 5: Object Tools; PHP and Packages; PHP Packages and Namespaces; Namespaces to the Rescue; Using the File System to Simulate Packages; Naming the PEAR Way; Include Paths; Autoload; The Class and Object Functions; Looking for Classes; Learning About an Object or Class; Getting a Fully Qualified String Reference to a Class; Learning About Methods; Learning About Properties; Learning About Inheritance.
Method InvocationThe Reflection API; Getting Started; Time to Roll up Your Sleeves; Examining a Class; Examining Methods; Examining Method Arguments; Using the Reflection API; Summary; Chapter 6: Objects and Design; Defining Code Design; Object-Oriented and Procedural Programming; Responsibility; Cohesion; Coupling; Orthogonality; Choosing Your Classes; Polymorphism; Encapsulation; Forget How to Do It; Four Signposts; Code Duplication; The Class Who Knew Too Much; The Jack of All Trades; Conditional Statements; The UML; Class Diagrams; Representing Classes; Attributes; Operations.
The 5th edition of this popular book has been fully updated for PHP 7, including replacing the PEAR package manager with Composer, and new material on Vagrant and PHP standards. It provides a solid grounding in PHP's support for objects, it builds on this foundation to instill core principles of software design and then covers the tools and practices needed to develop, test and deploy robust code. PHP Objects, Patterns, and Practice begins by covering PHP's object-oriented features. It introduces key topics including class declaration, inheritance, reflection and much more. The next section is devoted to design patterns. It explains the principles that make patterns powerful. The book 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 manage builds and dependencies with Composer. It also explores strategies for automated testing and continuous integration. Taken together, these three elements: object fundamentals, design principles, and best practice, will help the reader develop elegant and rock solid systems.
Includes bibliographical references (pages 535-536) and index.
Physical Description: 1 online resource (583 pages).
Bibliography: Includes bibliographical references (pages 535-536) and index.
ISBN: 9781484219966
1484219961
1484219953
9781484219959