Pulling up Your Legacy App by its Bootstraps!
Your mission, should you choose to accept it, is to support an application built on an older framework. Refactoring isn't an easy option. The code is untested and nowhere near best practices or standards. In this session, we'll talk about strategies to incorporate modern PHP coding practices to add features and functionality and retiring the older code in pieces. We'll review specific examples and code from a real project where we bootstrapped a legacy application that needed a lot of help to become useful to its users and simpler for developers to maintain. We'll talk about strategies to leave the existing code in place until the new code is ready to replace it in whole or in pieces.
There are a lot of different types of legacy codebases. Some can be incrementally refactored. Others may need to be replaced one feature at a time. However some legacy applications are too risky to alter. If the application is very important to your organization, what can you do to avoid breaking the application?
We will talk about a Scholarships project my team bootstrapped. We created new models for the application in a directory adjacent to the framework. As these new models were tested and ready, we used dependency injection to include them in new controllers in the old framework. This allowed us to leave the old application intact until we could completely replace it. After we completed replacing the code features, we could take our new classes and use them in a new framework or as a standalone application.
Attendees will learn: