asp.net mvc 3 - ASP MVC3 vs Ruby on Rails



我主要在。net领域进行开发,但我有一个项目即将到来,需要真正支持前端。很多UI的爱。

使用Ruby On Rails而不是MVC3有价值吗?我该如何在两者之间做出选择呢?还有其他值得考虑的选择吗?

我知道Ruby On Rails很流行,但是它和MVC3有什么不同呢?

是否有使用rails而不是mvc3的价值?

是的。即使没有,它也会给你一个不同的视角,拓宽你思考编程问题的方式。ruby语言的简洁,代码块的有用性,以及语言的动态行为,让你能够真正以不同的方式思考。

如何在两者之间选择?

如果项目很短,那就坚持你所知道的。但是,如果它最终将成为一个更长的项目,那么开始挖掘rails的学习曲线可能是值得的。大多数人会告诉你,rails比。net mvc开发更快。如果项目足够长,一旦你适应了它,你可能最终能够在rails上更快地开发。

也就是说,微软程序员的学习曲线可能会很陡!如果你是一个unix用户,那么它不会那么糟糕,但如果不是,准备好学习很多不同的主题。命令行和你的shell, TDD, homebrew或macports, git代替subversion, gems, bundler, rvm, rspec或其他一些测试框架等。

同样,如果你没有mac或者没有使用某种类型的*nix,那么你可能想要坚持使用。net。据我所知,在windows上开发rails是一段痛苦的经历。

如果TDD对你很重要,那么rails就是你的选择。此外,在rails上部署要容易得多。

如果您喜欢使用其他人构建的工具,那么生态系统可能是一个因素。Rails拥有庞大的开源开发人员基础,他们为社区做出了很多贡献。如果你想比较一下github.com (rails)和codeplex (microsoft)。然而,有了微软的NuGet系统,微软方面可能会开始创建一个更好的生态系统。但现在还差得远呢。

还有其他值得考虑的选项吗?

如果你需要开发一个动态的,数据库支持的网站,那么rails或。net mvc是不错的选择。如果是更简单/更小的东西,那么一些更简单/更小的框架是sinatra(用于ruby)或webmatrix(用于。net)。使用这些框架,您将能够更快地跟上速度。

这两个框架有什么不同?

我注意到最大的区别来自底层语言,ruby用于rails, c#用于。net mvc。Ruby是动态的,而c#是静态的。Rails不编译,而。net mvc是。你将从。net mvc中获得更多的原始性能。

Rails实际上是用TDD和BDD构建的。上次我使用。net mvc 1.0时,做TDD真的很困难。

在开发时,几乎每个使用。net mvc的人都会使用Visual Studio,但我想说大多数rails开发人员不会使用IDE。他们只是使用一个简单的文本编辑器(textmate, vim, emacs),并使用控制台进行调试。

编辑:

* 奖金提示 *

如果你想开始使用rails(我强烈推荐),最简单和最彻底的方法是阅读Michael Hartl的rails教程。在本书中,您将学习ruby/rails以及以下

  • git -源代码控制
  • rvm -在同一台计算机上运行不同版本的ruby
  • rspec - for TDD
  • heroku - free web hosting with SIMPLE deployment

一旦你很好地理解了rails,你就会想要提高你的ruby技能,真正成为一个好的rails开发人员。

Ruby和RubyOnRails听起来很合适。

如果你真的想,你可以使用IronRuby来实现。net的好处。

至于理由——许多成功的站点都是用这个框架编写的。它在MVC3上有良好的记录。

相关内容

  • 没有找到相关文章

最新更新