Expert PHP 5 Tools with the request if I could review this book. Improving development processes using PHP tools is something I promote myself (see my slides about PHP Power Tools on Slideshare), so I could not refuse this request.
Expert PHP 5 Tools is a new book from Packt Publishing written by Dirk Merkel. In 10 chapters Dirk introduces the reader with several PHP tools that will improve development processes and quality of code from a single developer or a team of developers. From simply syntax checking and code validation to automated testing and deploying, each chapter discusses each tool in detail and contains sample code to put the theory into practice.
Besides describing in detail tools to validate (PHPLint and PHP_CodeSniffer), test (PHPUnit), debug (XDebug) and manage PHP codebases (Subversion) and improve collaboration between developers, Dirk has dedicated a whole chapter on using UML to describe and structure your applications, a whole chapter on using Eclipse IDE with the PHP Development Tools (PDT) and continuous integration with Cruise Control and PHPUnderControl using both Ant as Phing to continuous build and deploy your PHP projects.
I must say I was impressed by the detailed description of each tool and how Dirk used simple examples in order to show the reader how to use the tool in the best possible manner. I found this book an easy read since I already had experience with the tools Dirk describes in the book, but even if I had not yet worked with them, the examples he has given in each chapter are of great value and give the reader a good insight in what each tool does and how it responds.
With PHP becoming increasingly important as a technology within corporate application development and enterprise development structures, using automated tools to improve quality have become very important for many developers.
Expert PHP 5 Tools is a must-read book for every PHP developer involved in professional PHP application development and wants to improve the quality of his work. Also for PHP development teams, this book will convince the reader why it's important to focus on coding standards, unit testing, automated documentation and even automated builds to structure each step in an automated, repetitive way.