Symfony 2和Symfony 1是截然不同的两款框架,在了解时,需要区分看待。Symfony 2是目前Symfony社区发展的重点。评价一个框架,要看其现状,也要看他的发展目标和前景。Symfony 2非常强调灵活性(可扩展性)、功能完备性和性能。
Symfony 2学习成本高,对于没有实际开发经验,或者对软件工程理念陌生的学习者,学习过程可以用痛苦来形容。但对于有一定经验,或者已经了解Ruby on Rails,Django及Java下若干重框架等的开发者来说,学习成本就不高了;而如果确实需求轻量的框架,Silex是Symfony 2的简化版本,比大多数PHP框架更适合开发简单应用。
开发效率更是关乎个人习惯了,张飞耍矛,关羽耍刀,选择哪款框架问题都不大,关键是要精通。另一方面,Symfony 2的开发社区很活跃,在GitHub上PHP分类里排名第一,这意味着你需要的功能,很可能已经由其他开发者实现了。
至于性能问题,不应该脱离Web应用的部署来谈,如果使用小型虚拟主机,Symfony 2运行效率一定会低下。但如果开发强调技术架构的商业应用,Symfony 2在各个运行环节都支持性能优化,而且Symfony 2确实也支撑了DailyMotion和Youporn等超大型网站。
Symfony 2的可扩展性极高,框架核心部件都是可以被替换的,各组件也可以被单独使用。Drupal、phpBB、EzPublish等著名的PHP开源项目,都在自己的下一个版本里使用Symfony 2的核心组件,或者完全基于Symfony 2重构。