Web开发框架:Zend Framework与Ruby on Rails对比ASP.NET MVC

时间:2009-06-08 05:36:23

标签: frameworks

我之前使用过Zend Framework,但是想知道你认为它与其他MVC框架相比如何?哪个更好,为什么?

Zend Framework 我的背景是〜3个月

好:

  • 模仿Zend_Layouts& Zend_Views
  • Zend_Forms,Zend_Validation,Zend_Filter:协助表单输入
  • Zend_Tool现在允许像Ruby on Rails的CMD代码生成这样的东西,除了它现在在功能方面仍然非常有限

为:

  • 陡峭的学习曲线
  • 现在仍然让我感到困惑

Ruby on Rails 仅查看了一些截屏视频

  • 我喜欢控制器,动作,模型和表单的cmd代码生成
  • 似乎很容易与AJAX合并

  • 我觉得部署起来很困难

ASP.NET MVC 还只观看了一些截屏视频

  • 我喜欢LINQ
  • 对VS 2010的广泛支持将加快开发

  • 昂贵的

4 个答案:

答案 0 :(得分:6)

Zend Framework:

○: 稳定的API,可接受的性能,在不需要时不会妨碍,易于集成旧数据库

为: 难以进入,有时令人困惑的语法

并且一般的php优势也适用,例如易于部署,可移植性,大型生态系统

<强>滑轨

○: 轻松创建一个有效的应用程序,轻松部署与phusion乘客,良好的单元测试集成

为: 性能并不总是很好,API总是在变化,很难突破框架

常规

Rails非常有助于快速创建应用程序。 Zend Framework肯定需要更长的时间。但只要没有问题出现。我觉得在rails中检测问题的根源要困难得多。在rails中到处发生的所有魔法在许多情况下都非常好,但它使得整个应用程序的行为不太可预测。因此,如果您不想遵循extact路径,框架创建者已经为您考虑过,您可能会遇到严重的rails问题。你可能不得不用rails编写第三个更少的代码,但是你需要花费三分之一来控制你的应用程序。

但对我来说最大的烦恼是版本之间的rails变化非常大。我花了很多时间将应用程序移植到更新的rails版本,这里的弃用和api更改以及插件的外部化功能。似乎轨道并不像它所说的那样成熟。

答案 1 :(得分:0)

我个人喜欢Ruby - 它是一种很好的代码编写语言。我也为我的正确工作编写了C#.NET,并认为MVC框架是.NET发布以来最好的事情。但是,为了获得最大的可移植性,我仍然将PHP用于我自己的Web项目,因为在Linux上找到便宜的托管非常容易(并且它也适用于IIS)。

答案 2 :(得分:0)

我会添加到列表CakePHP。它实际上是一个“Rails on PHP”,严格遵守配置和严格的MVC。我个人更喜欢CakePHP和Zend。哦,部署非常简单。

答案 3 :(得分:0)

我主要在php和ruby中开发,我认为两者都有利弊。

我认为我们大多数人都同意,Zend花了一点时间来开发一款新应用。缺乏命令行工具和脚手架使得流程加快了一点。但我觉得表现更好,实际上好多了。

Ruby / Rails超快速旋转,并且由于脚手架,你可以非常快速地获得工作骨架。虽然性能可能会更好,但我认为Zend在这一类别中占据了Rails的主导地位。语言很有趣,但正如其他人所提到的,有很多魔法。如果你发现在php中烦人的魔术方法,你会讨厌ruby的概念,其中各种代码块或宝石重新打开基类并创造魔法让你挠头并思考,“这到底是从哪里来的?”。此外,正如其他人所提到的,除非您永远不会更新您的应用程序,否则请为迁移做好准备。 Rails 3.2一直到最新版本,5.0.2,我想,你会让你重构一段时间的代码。

如果我正在开发一个我计划长期工作的应用程序,我通常会选择Zend。如果我需要快速旋转它并且性能/负载不是一个主要因素,我会使用rails。

我不知道我是否在其他海报上添加了更多的见解,但这些是我个人的偏好。