Answer the question
In order to leave comments, you need to log in
Project on ZF1 - how to upgrade to a newer frame?
There is a project on ZF1, which until now has not been transferred to a more recent version.
It is important for the customer that the project works - and the programmers perform his tasks for the development of the project. Those. we complete the tasks, the project improves, it is better / more convenient for customers to use, new customers come and bring in income, the company lives and everything is as it were good and should be so.
But, from the point of view of programmers, ZF1 is not quite what should be inside the project now. Because working with the old framework is at least a degradation of programmers, and at the very least when ZF1 support ends.
Task: move to a more recent frame.
Problem: It is impossible to completely direct programmers to rewrite the project to a new frame, because will be lagging behind competitors.
How to be?
Answer the question
In order to leave comments, you need to log in
Much of course depends on the specifics of the project, but an approximate algorithm of actions in the general case is as follows:
1. Choose a new framework (or without it, at your discretion). You decide to create new functionality on it and only on it. Whether ZF2/3, Symfony, Laravel - it doesn't matter what you like. Prepare for the fact that you will have to completely rewrite the business logic (if the integration with the framework was tight, as PHP developers usually do). If there was a dependence on abstractions and a modular structure - you can be congratulated, the transition will be painless and quick.
2. Get ready that there will be more work than just tasks to be solved on the ZF1 in the future. Try not to sag too much in terms of performance.
3. There is a list of URLs migrated to the new application. The decision as to which application to hand over the processing of the request lies at the entry point to the application. (in index.php, for example. That is, if usually the application is simply initialized there, then it should now be preceded by the business logic of determining which application to run, a kind of mini-router. If rewritten, give it to the new application. by default old)
4. If you didn't have tests - this is where you will begin to understand why they were needed :)
Well, in fact, it turns out that for some time you will have 2 applications that need to be developed in parallel. The old one is marked as unmodifiable. A task comes - first transfer it to a new frame, test it, if it works as it should - in your mini-router, send the corresponding requests to the new application. Gradually bring from 0% to 100% - and you can throw out the old framework and micro-router in the index, you have moved.
I repeat in support of the answers above, business almost always frankly does not care what is under the hood, this technology does not bring money. If you can’t convince the authorities to mothball and rewrite everything, then either this is really not necessary, or your persuasion skill hasn’t been pumped enough.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question