我需要将一个应用程序从Zend Framework 1.12.0迁移到2版本。目前似乎还没有迁移指南。我已经学习了ZF2编码规范,并采用了依赖注入(Zend\Di)和PHP 5.3名称空间。我的目标是将我的ZF1应用程序重构为ZF2模块。
问题:是否可以分步进行,每一步都至少有部分工作的应用程序,并且避免大规模的重构步骤?如果可以,那么具体步骤是什么?
以下是我关于这种分步迁移的想法,但我不知道每一步之后是否会得到一个工作的应用程序:
问题:是否可以分步进行,每一步都至少有部分工作的应用程序,并且避免大规模的重构步骤?如果可以,那么具体步骤是什么?
以下是我关于这种分步迁移的想法,但我不知道每一步之后是否会得到一个工作的应用程序:
- 首先设置ZF2骨架应用程序。
- 设置一个新模块(MyApp),并将我的ZF1应用程序的内容重新组织到MyApp模块文件夹结构中。然后设置非常基本的配置和引导,并通过扩展它从ZF2 AbstractActionController迁移IndexController。模型(Zend_Db)和视图(Zend_View)稍后将被迁移。这里的目标是拥有一个工作的IndexController :: indexAction,它没有太多的依赖关系。
- 设置更多的配置和引导(路由,翻译,区域设置,缓存,数据库,Acl,ViewHelpers等)。我想首先设置这些组件的ZF1版本,然后逐个迁移它们。
- 迁移其他控制器,并使用Zend\Di或使用ServiceManager将依赖项注入到控制器中。
- 通过使旧的phing脚本与新的目录结构相匹配来设置自动部署。
- 将视图(包括助手)和表单迁移到ZF2。
- 将模型(从Zend_Db迁移到ZF2 Zend\Db或Doctrine)迁移到ZF2。
- 逐个迁移其他ZF1组件(翻译,区域设置,缓存,Acl等)。
- 重构康复和长假。