ASP MVC与Ruby on Rails

Chr*_*ada 3 ruby asp.net-mvc

ASP MVC和RubyonRails之间有哪些相似的特性和差异?

pup*_*eno 8

它们的相似之处不仅在于它们遵循MVC模式,而且在于它们如何做到这一点.有许多点非常相似,但也有很多不同之处.

从纯粹的主观方式来看,我可以说Ruby on Rails更加成熟,并且有很多东西可以轻松完成构建网站的任务.我从ASP.NET MVC转移到Ruby on Rails,这是我见过的优势列表(其中一些非常主观):

  • 由于在Linux服务器上运行:

    • 服务器更便宜.
    • 配置可重用,我们可以在30分钟内重新构建服务器.木偶.
  • 有超过10000个库,称为gems,所有库都可以用同样简单的方式安装和更新.http://rubygems.org/

  • 几个可重用的身份验证系统,包括我写的那个; ubiquitous_user + rails_openid.

  • 迁移.这是非常重要的!

  • 使用真实的实时数据库对模型进行单元测试.它很漂亮.

  • 具有非常强大的断言系统的控制器的功能测试.

  • 平台独立性.你使用Windows,我使用Mac.

  • ActiveRecord(优于EF或我见过的任何其他ORM).优雅地降级,允许您添加更多SQL,直到您在SQL中编写所有SQL.你会爱上它的.

  • 命令行工具更易于安装和维护更新(想想ssh,sftp/scp来复制和同步文件,lame,sox等).

  • 将数据从控制器传递到视图并不是一件容易的事,因为Ruby是动态的,而C#/ ASP.NET MVC则不是.

  • 地理定位的好图书馆.

  • 与Sphinx很好的整合.

  • FreeNode中的社区#ruby和#rubyonrails(大于## csharp y ## asp.net).

  • 将所有样式表和javascripts连接在两个文件中.

  • 默认情况下,为所有文件添加时间戳.

  • 环境:开发,测试和生产的不同设置(不再有web.config疯狂).更多环境可能.

  • 使用capistriano进行部署.用一个命令部署,一切; 非常可重复,可以轻松回滚; 负责数据库迁移; 可以同时处理部署到各种服务器或服务器组(如果您有多个前端或分别有生产和分段).

  • MySQL原生.集群功能可能会派上用场(我已经使用它们,只有只读镜像)

  • 路由功能更强大,内置RESTful,使用起来很简单.命名空间,子资源和许多其他功能.

  • 部署到服务器时无需编译,非常好.

  • 各种实现:Java中的JRuby,它可能更快,可以在像tomcat这样的Java服务器上运行.Rubinious,Ruby和JIT编译器.

  • Heroku:一个应用服务器,像谷歌应用程序,但Ruby on Rails.可能是一个好资源或不是.他们的表现非常好.

  • 非常好的工具来分析源代码并发现潜在的问题.一个小例子:http://getcaliper.com/caliper/project?repo = git://github.com/pupeno/ubiquitous_user.git

  • TDD不仅可行,而且很容易.动态语言与惊人的测试框架相结合.

  • 更好的链接方法

  • 非常好的表单生成器:formtastic.可以在一行中生成表单.

  • 脚手架.

  • 管理工具.

  • 一个理智的翻译系统,gettext.