1

我知道 symfony2 并且从未使用过 symfony1.4。我要去新公司,但不知道他们使用的是 symfony2 还是 symfony1.4。

我想知道,如果他们确实使用了 symfony1.4 ,那么进行转换有多难?

4

2 回答 2

4

Symfony2 和 symfony 在代码库上完全不同,但从架构的角度来看,尤其是核心类的“布线”。

由于 Symfony2 有它的依赖注入容器 (DIC) 来处理服务类及其依赖关系,symfony 1.4 有一个 sfContext 单例来处理不同的类,这些类在某种程度上可以在 factory.yml 配置文件中进行配置,但一点也不像在Symfony2。

另一方面,MVC 概念在两个版本之间仍然相当普遍。您有一个将 URL 映射到控制器的路由组件(语法略有不同)。在控制器中,您处理请求并准备视图中所需的数据。symfony 1.4 中的模板是普通的 php 文件(没有 twig)。1.4 中支持的 ORM 是学说 1.2 和推进(我相信 1.6)。此外,两个版本的表单处理和安全组件也不同。

但这或多或少都是“细节”。最重要的问题是你要用它做什么。如果应用程序本身是直截了当的东西,你应该能够很快进入 1.4,如果你必须进入内部,你会发现更多的概念和限制差异。

要了解一下,您可以查看 1.4 的 jobeet 教程:http ://www.symfony-project.org/jobeet/1_4/Doctrine/en/

在 v2 的官方文档中找到更多关于差异的信息:http: //symfony.com/doc/current/cookbook/symfony1.html

于 2012-07-08T07:33:38.940 回答
3

symfony1.4 与 Symfony2 完全不同。

它们基本上是 2 个单独的框架,仅共享名称。

此外,在比较 symfony 版本时,您必须记住它使用的大多数组件也已更新。例如,Doctrine 也被重写,它们使用完全不同的设计模式(1.x 中的 Active Record 与 2.x 中的 Data Mapper)。

话虽如此,1.4 更容易学习(在我的主观意见中),所以如果你真的了解 symfony2 的方法,学习 1.4 应该不会太难或太长。

如果他们真的使用旧版本,你也可以考虑说服新公司的人切换到新版本,因为 symfony 1.4 很快甚至不会被支持。

于 2012-07-08T07:23:24.383 回答