我需要学习并使用MVC方法来构建Web应用程序。鉴于我有使用ASP .NET Webforms - ASP .NET MVC或Ruby on Rails的经验,哪种方式更好?
我听说过人们对RoR及其简单性及其功能如脚手架,ActiveRecord,约定配置等等。
然而,我没有看到这些有什么好处。他们中的大多数听起来很基本(你不会真正想要在生产代码中使用的那种 - 例如脚手架) - 并且大多数听起来就像他们在某种形式的ASP .NET MVC中那样。
为什么我应该考虑学习基于ASP .NET MVC的RoR?
我不知道或无法察觉的好处吗?
答案 0 :(得分:25)
我建议您学习两者!
白天我是一名专业的ASP.Net开发人员,晚上是业余爱好者RoR开发人员。学习RoR实际上会让你成为一个更好的.Net开发人员,而且很有趣!
还要考虑有一天你实际上可以在IronRuby中编写一个ASP.NET MVC应用程序而不是繁琐的旧c#:)
答案 1 :(得分:12)
我建议学习RoR而不是MVC有很多原因
那就是说:ASP.Net MVC是微软的一个很棒的框架。我不是在提倡倾销你的筹码并转向黑暗面。我认为在技术方面有广泛的了解是有帮助的。
答案 2 :(得分:10)
如果您熟悉Microsoft堆栈(Windows,IIS,SQL,ASP.NET)但不熟悉Linux堆栈(Apache,MySql等),那么使用Ruby on Rails上的ASP.NET MVC从长远来看,花在学习基础设施上的时间会减少很多。
答案 3 :(得分:8)
我建议你看一下你所在地区的就业市场,然后选择能增加你机会的机会。 Ruby on Rails是一个很棒的框架,但是如果你所在地区没有人关心或使用它,那么学习它对你没有任何帮助(从职业角度讲 - 有很多理由可以让你从学习中受益透视)。我最近面临着这种困境并给了它很多思考;因为我的区域基于99%.Net而且这就是公司想要的,所以我决定专注于MVC并成为ASP.NET中的“专家”,而不是学习RoR,因为没有对RoR的需求。我实际上浪费了两个月的时间学习RoR,然后才意识到这对我个人有帮助,但不是专业。
那就是说,如果你打算自己罢工,那就选择一个你感觉更舒服的人。如果您已经了解Asp.Net,我建议首先看一下MVC框架,因为它利用了您已经知道的内容,但我衷心建议如果不是Rails框架,那么选择Ruby,因为它非常好许多任务的脚本语言。
答案 4 :(得分:6)
我建议一次学习一个。学习新语言或编程方法的最大部分是学习最佳实践并改变如何处理编程问题。不只是语法。一次跳到两个会让你有两个坏习惯。
因为您已经了解ASP.NET,我认为学习ASP.NET MVC将是合乎逻辑的下一步。深入了解MVC概念,然后在Ruby on Rails中尝试一两个项目。这两个框架以不同的方式处理某些事情。您可能会发现您的风格和偏好比另一种更适合您。但不管怎样,现在你们两个都知道了。不能伤害对吗?
答案 5 :(得分:4)
然而,我没有看到它是什么 这些都很棒。他们中的大多数听起来 基本的(你真的不想要那种 在生产代码中使用 - 脚手架,例如) - 和大多数 他们听起来像在ASP那里 .NET MVC的某种形式或其他形式。
快速建立网站原型的能力是RoR如此受欢迎的一部分。在为客户设计网站时,非功能性模拟和功能模拟之间存在很大差异。
我相信ASP.NET MVC和RoR之间的功能噱头将继续变小。最终选择将归结为Windows vs LAMP的问题。
我会和RoR一起度过几个星期。安装,启动和运行它非常简单,因此您可以使用它进行开发。然后,只需要遵循一些教程,直到你已经涵盖了大部分基础知识。然后决定是继续使用RoR还是坚持使用ASP.NET MVC。
答案 6 :(得分:3)
如果您已经了解c#并且正在使用asp.net webforms,请尝试使用asp.net mvc ...当您学习它时,您可以使用RoR提高您的技能,因为我计划......
欢呼声
答案 7 :(得分:1)
就个人而言,我会花时间学习两者。我已经做到了这一点,虽然我最终选择MVC作为我当前的项目,但我的决定是因为我没有时间投入学习Ruby语言。另一方面,RoR框架可以在几个晚上内完成并开始使用网页,验证,CRUD e.t.c.在任何时候都没有。但是,当您需要开始添加域逻辑时,了解宝石可能需要了解Ruby。
另一个原因是我已经拥有了微软的托管设置,而且我知道c#和.net框架以及我已经需要的资源,所以虽然它不太成熟并且不像RoR那样功能丰富,但我推断我可以使用MVC进一步加快速度。
要自己做出决定,权衡所有选项,花一周时间使用MVC(使用MVC in Action)并花一周时间使用RoR(使用书籍Agile Web Development with Ruby on Rails 3rd Edition)这些将获得你很快就会去。然后当你决定一个或另一个时,你会有一个更有见识的观点。
答案 8 :(得分:0)
考虑到Stack Overflow是用ASP.NET MVC编写的,我认为在MVC上推广RoR可能是一种亵渎。
MVC几乎为微软爱好者提供了一个他们不需要去别处的工具。