Вот что вам нужно сделать.
Сначала убедитесь, что вы можете идти, прежде чем бежать. Создайте что-нибудь простое, возможно, касательно вашего основного проекта.
НЕ собирать часть окончательного проекта и надеяться, что он "превратится" в конечный проект. Это никогда не получается хорошо. Зачем? Вы будете делать глупые ошибки. Но вы не можете удалить или переработать их, потому что вы должны развить эту ошибку в финальном проекте.
Далее выбираем рамки. Какие? Во-вторых? Да. Во-вторых. Пока вы на самом деле не сделаете что-то с некоторыми языками сценариев и фреймворками, у вас нет реальной полезной концепции того, что вы делаете. После того, как вы что-то построили, у вас теперь есть информированное мнение.
«Подожди», - говорите вы. «Чтобы сделать шаг 1, я должен был выбрать рамки». Правда. Шаг 1, однако, содержит решения, которые вы можете отозвать. Выбор неверной основы для шага 1 не имеет долгосрочных негативных последствий. Это было просто обучение.
В-третьих, с помощью вашей стратегической структуры и некоторого опыта разбейте существующий сайт на части, которые вы можете построить с помощью своей новой структуры. Расставьте приоритеты этих частей от самых важных до наименее важных.
НЕ планируйте все преобразования как один масштабный проект. Это никогда не работает. Это делает большую работу более сложной, чем необходимо.
Мы будем использовать Django в качестве примера фреймворка. У вас будут шаблоны, функции просмотра, определения моделей, сопоставление URL-адресов и другие подробности.
Для каждой сборки выполните следующие действия:
Преобразуйте существующую модель в модель Django. Это никогда не будет соответствовать вашему устаревшему SQL. Вам придется переосмыслить модель, исправить старые ошибки, исправить старые ошибки, которые вы всегда хотели исправить.
Написать юнит-тесты.
Создайте утилиту преобразования для экспорта старых данных и импорта в новую модель.
Создайте страницы администратора Django, чтобы потрогать и почувствовать новые данные.
Выберите репрезентативные страницы и переделайте их в соответствующие шаблоны. Вы можете использовать некоторые устаревшие страницы JSP. Однако не тратьте слишком много времени на это. Используйте HTML для создания шаблонов Django.
Планируйте свои URL и просматривайте функции. Иногда эти функции просмотра будут использовать унаследованные классы действий. Не «конвертировать». Переписать с нуля. Используйте свой новый язык и рамки.
Единственное, что стоит сохранить, это данные и концепция работы. Не пытайтесь сохранить или преобразовать код. Это вводит в заблуждение. Вы можете конвертировать юнит-тесты из JUnit в Python.
Я дал этот совет несколько месяцев назад. Я должен был сделать некоторую тренировку и обзор во время обработки. Пересмотренный сайт запущен и работает. Нет перехода от старой технологии; они предложили переписать с нуля. Разработчик доволен. Сайт работает хорошо.