MVC框架是否因语言的不同而有很大差异?比如ASP.NET、Python、RoR等等

MVC框架是否因语言的不同而有很大差异?比如ASP.NET、Python、RoR等等,python,ruby-on-rails,asp.net-mvc,model-view-controller,Python,Ruby On Rails,Asp.net Mvc,Model View Controller,我已经习惯了ASP.NETMVC框架,但我想知道是否有人有关于MVC框架比较的好文献 一个比另一个好吗 有人使用过多个吗?MVC首先是一种架构设计模式。NETMVC/rubyonrails/struct和其他MVC框架基本上就是这种模式的实现 MSDN上有一篇关于MVC作为设计模式的好文章: 这是一篇老文章,但却是科技共和国最好的文章之一 一个比另一个好吗?这是一个巨大的、主要是主观的蠕虫罐头。大多数MVC框架都有很多共同点 有区别吗?对以下是人们似乎关心的一些注意事项: 1) 约定的级别高于

我已经习惯了ASP.NETMVC框架,但我想知道是否有人有关于MVC框架比较的好文献


一个比另一个好吗


有人使用过多个吗?

MVC首先是一种架构设计模式。NETMVC/rubyonrails/struct和其他MVC框架基本上就是这种模式的实现

MSDN上有一篇关于MVC作为设计模式的好文章:

这是一篇老文章,但却是科技共和国最好的文章之一


一个比另一个好吗?这是一个巨大的、主要是主观的蠕虫罐头。大多数MVC框架都有很多共同点

有区别吗?对以下是人们似乎关心的一些注意事项:

1) 约定的级别高于配置

在这方面,您不需要做很多配置或样板代码。相反,该框架强制您遵循许多命名约定。如果你遵守规则,很多东西都会自动神奇地“工作”。(Java)另一方面,需要大量的XML配置,您必须构建更多的脚手架

2) “模板”的纯度

在()中,您使用模板语言来定义视图。开箱即用的视图是HTML,其中混合了大量代码

3) 模块化水平

在前面的回答中,我不得不说,就像在香草ASP.NETMVC中一样,您可以使用Web表单或“视图引擎”,但还有更多可用的(包括)。像Spring这样的框架也提供了许多“视图引擎”,而其他框架通常只提供一种方法

4) 全平台vs简单MVC框架

一些框架超越了MVC,提供了更多开箱即用的功能,并深入集成到其他层中。例如,Rails和Django提供了标准的ORM(数据访问)。弹簧和单轨均提供an和an。Django甚至为您的模型提供了一个自动生成的管理界面。相比之下,ASP.NETMVC将IoC和ORM之类的东西(甚至是否使用它们)留给开发人员

5) 语言依赖

如果您选择Django,您就是在选择Python,而选择Rails意味着选择。但是,Spring有可能与在上运行的任何语言一起使用。在.NET平台上还有Spring。ASP.NET被设计为与C#和VB.NET同样好地工作,但可以从任何.NET语言中使用。不同的语言有不同的优势和劣势,这些优势和劣势超出了MVC框架

那么什么更好呢?好吧,有了Rails这样的框架,你可以很快地启动和运行,但当你试图在线条外着色时,可能会遇到问题。Spring提供了一个完整的“企业”平台,有些人可能会觉得太多了。ASP.NET MVC提供了一个很好的web层,但将大部分应用程序管道留给您。哪一个更好在很大程度上取决于你的个性和你想做什么

我在上面提到了一些框架,但是当然有很多。碰巧,我通常在自己身上使用ASP.NETMVC