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