Одно из предположений, которые делают фреймворки, заключается в том, что URL-адреса соответствуют коду. Например, в рамках вы часто видите следующее:
http://app.com/docs/list
http://app.com/docs/view/123
Обычно, хотя старые CGI-скрипты не работают так, у вас больше шансов получить что-то вроде:
http://app.com/docs.cgi?action=view&id=123
Чтобы воспользоваться преимуществами фреймворка, вам, возможно, потребуется изменить все URL-адреса. То, сможете ли вы сделать это и как сохранить старые ссылки, вполне может составить большую часть вашего решения.
Кроме того, фреймворки обеспечивают поддержку некоторого вида ORM (объектно-реляционного картографа), который абстрагирует вызовы базы данных и позволяет работать только с объектами. Для Catalyst
обычно это DBIx::Class
. Вы должны оценить, сколько будет стоить переход на это.
Вы, вероятно, обнаружите, что хотите выполнить полную переписку, используя старый код в качестве эталонной платформы. Это может быть гораздо меньше работы, чем вы ожидаете. Однако начните с нескольких игрушечных сайтов, чтобы почувствовать, какой фреймворк / шаблон / шаблон вы решите использовать.