ASP MVC和RubyonRails有哪些相同点和不同点?
最佳答案
它们的相似之处不仅在于它们遵循 MVC 模式,还在于它们的实现方式。有很多相似点,但也有很多不同点。
从纯粹主观的角度来看,我可以说 Ruby on Rails 更加成熟,并且有很多东西可以简化构建网站的任务。我从 ASP.NET MVC 转移到 Ruby on Rails,这是我看到的优势列表(其中一些非常主观):
由于在 Linux 服务器上运行:
- 服务器更便宜。
- 配置可重复使用,我们可以在 30 分钟内重新构建服务器。木偶。
有超过 10000 个库,称为 gems,所有库都可以通过同样简单的方式安装和更新。 http://rubygems.org/
几个可重复使用的身份验证系统,包括我编写的那个; ubiquitous_user + rails_openid。
迁移。这非常重要!
使用真实实时数据库对模型进行单元测试。效果很好。
使用非常强大的断言系统对 Controller 进行功能测试。
平台独立性。你用 Windows,我用 Mac。
ActiveRecord(比 EF 或我见过的任何其他 ORM 都要好)。优雅地降级,允许您添加更多的 SQL 片段,直到您全部用 SQL 编写。你会爱上它的。
命令行工具更易于安装和维护更新(想想 ssh、sftp/scp 来复制和同步文件、lame、sox 等)。
将数据从 Controller 传递到 View 并不难,因为 Ruby 是动态的,而 C#/ASP.NET MVC 不是。
不错的地理定位库。
与 Sphinx 的完美集成。
FreeNode 中的#ruby 和#rubyonrails 社区(比##csharp y ##asp.net 更大)。
将所有样式表和 javascript 连接到两个文件中。
默认为所有文件添加时间戳。
环境:开发、测试和生产的不同设置(不再是 web.config 的疯狂)。更多环境可能。
使用 capistriano 进行部署。一键部署,一网打尽;非常可重复,可以轻松回滚;负责数据库迁移;可以一次处理部署到各种服务器或一组服务器(如果您有多个前端或分别有生产和暂存)。
原生 MySQL。具有可能会派上用场的集群功能(我已经使用过它们,拥有只读镜像)
路由更强大,内置 RESTful,使用起来很简单。命名空间、子资源和许多其他功能。
无需编译,部署到服务器时非常好。
各种实现:Java 中的 JRuby,它可能更快,可以在 tomcat 等 Java 服务器上运行。 Rubinious,带有 JIT 编译器的 Ruby。
Heroku:一个应用服务器,类似于 google apps,但用于 Ruby on Rails。可能是一个很好的资源或不是。他们扩展得很好。
分析源代码和发现潜在问题的非常好的工具。一个小例子:http://getcaliper.com/caliper/project?repo=git://github.com/pupeno/ubiquitous_user.git
TDD 不仅可行,而且很容易。动态语言与惊人的测试框架的结合。
更好的链接方法
非常好的表单生成器:formtastic。可以一行生成一个表单。
脚手架。
管理工具。
一个健全的翻译系统,gettext。
关于asp.net-mvc - ASP MVC 与 Ruby on Rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3090989/