Book Image

Expert PHP 5 Tools

By : Dirk Merkel
Book Image

Expert PHP 5 Tools

By: Dirk Merkel

Overview of this book

Even if you find writing PHP code easy, writing code that is efficient and easy to maintain and reuse is not so straightforward. Self-taught PHP developers and programmers transitioning from other languages often lack the knowledge to work with PHP on an enterprise level. They need to take their PHP development skills to that level by learning the skills and tools necessary to write maintainable and efficient code.This book will enable you to take your PHP development skills to an enterprise level by teaching you the skills and tools necessary to write maintainable and efficient code. You will learn how to perform activities such as unit testing, enforcing coding standards, automating deployment, and interactive debugging using tools created for PHP developers – all the information in one place. Your code will be more maintainable, efficient, and self-documented.From the design phase to actually deploying the application, you will learn concepts and apply them using the best-of-breed tools available in PHP.Experienced developers looking for expertise in PHP development will learn how to follow best practices within the world of PHP. The book contains many well-documented code samples and recipes that can be used as a starting point for producing quality code.Specifically, you will learn to design an application with UML, code it in Eclipse with PDT, document it with phpDocumentor, debug it interactively with Xdebug, test it by writing PHPUnit tests, manage source code in Subversion, speed up development and increase stability by using Zend Framework, pull everything together using continuous integration, and deploy the application automatically with Phing – all in one book. The author's experience in PHP development enables him to share insights on using enterprise tools, in a clear and friendly way.
Table of Contents (15 chapters)
Expert PHP 5 Tools
Credits
About the Author
About the Reviewers
Preface

Chapter 10. Continuous Integration

For any large scale development project, making the pieces fit together is a challenge. If you are the only developer working on a project, you don't have to worry about your changes creating a conflict with those of other developers (you can think of it the other way around if you prefer). However, when there are several or even dozens of developers modifying the same code base, you are likely to run into all kinds of problems. A maxim that we have seen in Unit Testing, and that applies here just as well, is that the longer you wait to address the problem, the harder and more expensive it becomes.

Developers and software architects started thinking about how to integrate the changes from different sources early, quickly, and on an ongoing basis. The practice of 'Continuous Integration' is one that was developed in an attempt to address the above problem. In a nutshell, you set up a process to automate the build process and provide feedback on the results...