Estoy de acuerdo con las otras sugerencias aquí, un marco no va a ser una solución mágica.
sin embargo, puede ayudar a la larga. he convertido varios sitios de mishmash en kohana framework ahora, y he tenido las siguientes experiencias.
inicialmente no conocía kohana lo suficiente, así que estaba aprendiendo eso mientras recodificaba mysite. Terminé por detener la reescritura y la codificación de un proyecto completamente nuevo desde cero para aprender kohana, y luego volví al proyecto de reescritura, ahora que entendí mejor el marco.
si usted no entiende el marco, que va a ser una curva de aprendizaje tratando de utilizarlo para convertir un viejo proyecto
primer paso en la reescritura era para tirar de todos los negocios/lógica de base de datos incrustada en las páginas hasta la parte superior de cada página (antes de la salida html). Así que no estaba cambiando el flujo/estructura del sitio web, solo separando la lógica de negocios de la lógica de visualización.
Después de eso tuve un sitio que tenía una lógica de negocios fácilmente legible, solo en la estructura anterior, y me había familiarizado con la antigua base de código al mismo tiempo.
El siguiente paso que hice fue solucionar los problemas de estructura de la base de datos para que todo estuviera en la 3ra forma normal (si es posible).
encontré más fácil modificar el código anterior a la nueva estructura de la base de datos, luego trabajar y la estructura de la base de datos anterior en el nuevo marco. (Kohana es en gran parte un marco basado en la convención, en lugar de configuración, así que era agradable para seguir esos convenios, para facilitar el mantenimiento a largo plazo)
tener una buena estructura de base de datos hace la vida más fácil, independientemente de marco
siguiente paso era elegir una parte del sitio web para reemplazar. establece las rutas en kohana y deja que kohana sirva esa parte del proyecto. kohana (y otros frameworks sin duda) tienen una alternativa, si un archivo solicitado a través de una url ya existe en el sitio, entonces kohana no manejará esa solicitud
ya que ha separado la lógica de negocio de la lógica de visualización en sus archivos php, es una simple cuestión de dividir el código en un controlador y una vista. hacer los cambios en ambas partes para adaptarse al marco.puede dividir la lógica de negocio en el modelo/controlador después de tener el controlador/vista funcionando como se esperaba
su forma de trabajo a través de esa parte del sitio, hasta que se complete. a continuación, pruebe/inicie/arregle errores, etc.
y vuelva a comenzar en la siguiente parte del sitio.
finalmente va a llegar allí ...
aunque tomó mucho tiempo para volver a escribir, para mí valió la pena, ya que los sitios son mucho más fáciles de mantener ahora. (obviamente, la cantidad de ganancia dependerá de la calidad de la base de código original)
buena suerte
Instalar una máquina virtual. Configura un entorno similar a tu servidor en vivo. Copie su sitio allí. Escriba Unit-Tests y luego refactorice la base de código. De esta forma, su sitio en vivo no se ve afectado y cuando termina, simplemente empuja el nuevo sitio al sitio de producción. Para obtener ideas adicionales, consulte http://sourcemaking.com/refactoring/convert-procedural-design-to-objects – Gordon