Many businesses and organizations depend on older high-value PHP software that risks abandonment because it is impossible to maintain. The reasons for this may be that the software is not well designed; there is only one developer (the one who created the system) who can develop it because he didn???t use common design patterns and documentation; or the code is procedural, not object-oriented. With this book, you???ll learn to identify problem code and refactor it to create more effective applications using test-driven design.
What you???ll learn
- What refactoring is and why you need to refactor code
- What test-driven design is and why you need to test your code
- How to write unit and functional tests with PHPUnit and Selenium Remote Control (RC)
- How to detect ???bad smells??? in PHP code, and refactor them using test-driven design
- How to refactor a large procedural application affected by many bad smells
Who this book is for
This book is for PHP developers, businesses, and developers relying on legacy PHP apps.
Table of Contents
- Introduction
- Finding ???Bad Smells??? in Code
- Introduction to Refactoring
- Principles and Rules
- Test-First Development
- Refactoring Tools
- Structuring Behavior
- Changing Class Responsibilities
- Dealing with Data Rationalization
- Reducing to Essential Conditional Executions
- Simplifying Method Calls
- Simplifying Generalization Relationships
- Legacy Code
- Regression Tests
- Refactoring with Patterns