Перенесите устаревшее приложение в Symfony2

У меня есть приложение с пользовательским фреймворком, оно очень старое 7 лет назад с использованием старых методов и шаблонов проектирования.

Мы сталкиваемся с проблемами.
Мы используем DAO Layer для доступа к объектам Data, и в связи с тем, что бизнес нуждается в усложнении, и DAO больше не в состоянии обслуживать бизнес-потребности, мы думаем использовать Symmfony2 и Doctrine2.

Но проблема в следующем:
ПРИЛОЖЕНИЕ ДЕЙСТВИТЕЛЬНО БОЛЬШОЕ.
Более 7 лет разработки и добавления функций.
Около 11.500 файлов и файлов Avg 1500 Line.

Я знаю, что это нелегкая работа, но я уверен, что сейчас есть способ перенести или, по крайней мере, использовать Doctrine, не затрагивая устаревший код.

Пожалуйста посоветуй.
Спасибо.

2

Решение

Нет простого ответа на ваши проблемы. Работать с устаревшим кодом всегда сложно.

Вы должны обернуть Symfony вокруг вашего приложения, если это возможно. Реализуйте шаблон Command или Facade вокруг своего приложения и заставьте контроллеры Symfony вызывать эти классы.

Попробуйте разделить уровни доступа DAO с помощью шаблона репозитория. Не репозитории Doctrine, а пользовательские, специфичные для вашего приложения. Когда у вас есть репозитории, отделенные интерфейсами от вашего приложения, вы можете выполнять их доктрины по одному.

Стоит подумать о том, чтобы отделить ваше приложение от Symfony, чтобы вы не столкнулись с подобными проблемами в будущем.

Кроме того, если вы можете, постарайтесь написать как можно больше тестов, это значительно упростит вам рефакторинг в будущем.

Я написал пост в блоге с некоторыми советами о том, как отделить от фреймворка Вот. Тот же шаблон применяется для хранилищ.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector