ruby-on-rails - view教程 - ruby ruby on rails




学习Ruby on Rails对Grails有什么好处? (10)

我的公司正在启动Grails路线。 原因在于目前的开发人员对Java很沉重,但是对于未来的一些Web开发项目,他们觉得需要MVC风格的语言 。 就个人而言,我来自设计/可用性世界,但是当我承担更多的“前端”责任时,我开始感觉到需要更深入地学习一门语言,所以我可以编写一些逻辑,特别是前端代码为我的用户界面和东西。

我一直试图进入Python / Django个人,但从来没有投入太多的时间。 现在我的公司正在“跳入”Grails,我买了“ 用Rails进行敏捷Web开发(第三版 - Beta版) ”,我开始进入RoR 。 我仍然喜欢在未来或者侧面学习Python ,但是我最大的问题是:

  • 我是否应该学习RoR,并在我的“投资组合”中使用更灵活的语言,知道我的RoR知识对我的Grails需求是有用的?

-要么-

  • 我应该跳过RoR,专注于学习即将工作的Grails,稍后再学习RoR / Django(Ruby / Python)吗?

基本上这个问题围绕着Grails在非公司环境中的用处以及Rails和Grails之间的相似之处。 (而这一点,虽然试图避免百年一遇的Python与Ruby(在轨道上):))


仅仅是一个问题,是他们选择Grails的原因,因为Groovy比Java更接近于Java语法,或者因为他们想要访问Java?

如果是前者,那么我会说试着把重点放在Grails上,因为这是你将要使用的。 如果是后者,您可能需要查看开发团队是否愿意使用JRuby。

我以前从来没有使用过Grails或Rails,但之前我曾经使用过Groovy和Ruby,作为一种语言,我认为Ruby更清洁,更一致,团队可能更喜欢生产。 作为一个平台,Rails已经更长时间了,并且引起了很多关注,所以我认为这是一个更加稳定的平台,可以使用更多丰富的功能。

JRuby可以完全访问用Java编写的类,所以这就是为什么我会考虑尝试Rails。 如果在决定时间太迟,我想你可以忽略这个职位。

基本上,如果你只是想和Java挂钩,那么JRuby是你应该考虑的一个选项,但是如果团队害怕非Java的语法,那么也许继续下去。


你应该跳过RoR,重点学习你将需要工作的Grails。


我一直在学习RoR和Grails,而后者更容易学习。

这两个框架共享相同的原则(敏捷,亲吻,干,鸭打字等等),但Groovy的语法是...很好,你可以在一眨眼的时间学习和使用。

我真的觉得Grails比RoR有更光明的前景。

PD:为了万一你觉得它有用,我的一个大学正在与Grails一起全职工作,并且有一些提示的博客:

http://dahernan.net/search/label/grails


乍一看,你会认为它们是完全不同的故事,因为它们基于极其不同的语言(Ruby和Groovy)。

然后,在阅读了几个教程之后,您会意识到它们有相同的原则,脚手架,鸭子打字,最终达到相同的目标: 使敏捷编程变得可行

如果您已经习惯了像IoC和MVC这样的术语,那么您会发现这些选项中的任何一个都很容易和令人兴奋。


我会同时学习。 他们都是即将到来的技术。 学习RESTful编码在任何语言中都是真正的好处。

我在工作中使用GRAILS,在工程中使用RoR。 我可以说RoR社区要大得多(我正在谈论RoR vs Grails而不是RoR vs Java)并且非常有帮助。

简答:他们是相似的....有什么可能伤害?


Rails社区一直在向RoR传福音,因此高期望已经被设定,并不总是被满足(程序员的生产力是好的,但是确保部署好后的好的性能并不是那么容易)。

Grails已经被设计为Java的脚本化后继者,而JRuby on Rails中使用的Ruby-Java集成已经不得不进行翻新。

我建议你坚持使用Grails; 它可能不像RoR那样具有相同的浮华,但这是一个实用的选择; 您可以提高生产力并重新使用现有的Java库。


我喜欢Grails over Rails,但是学习Rails会给你一个更加平衡的视角,并且开放你的眼睛来忽略Grails中可能的事情。


是的,Grails是要走的路。 RoR是好的,但是它将您与Ruby生态系统联系在一起。 学习新框架或语言的一部分努力是学习类库和语言语法。 如果你的同事都是Java类型的话,你将会得到更多的帮助和支持,因为他们都会和你说同样的语言。

学习一点Groovy和Java的另一个好处是,像GWT这样的Web框架将会向您敞开大门。 Grails有一个GWT插件,作为一个前端开发人员,您将会体会到易用性和跨浏览器兼容性。

还有至少有一个托管公司提供免费的Grails应用程序托管( http://www.mor.ph/ ),这意味着您可以在小数据量原型网站之前支付。


是的,如果我们比较grails和rails我会选择grails(我在grails中开发了一些intranet应用程序)。

但是Django优于两者,因为Python是一个完美的选择。


嗯,我不知道该怎么说。 有些人可能会打我这个。

语言(Groovy和Ruby)

作为一种语言,我认为Ruby比Groovy更时髦。 Groovy只是为了让Java程序员变得轻松,因为你不需要学习太多的新语法。 但总的来说,我认为并不像Ruby那么时髦。 在今年的JavaOne中,Groovy不会成为值得学习的JVM语言,而是Scala。 除此之外, Groovy的原始创建者本身并不相信他自己创建的语言

社区和工作机会

对于社区来说,Grails社区并不像Rails那么大,尽管Spring获得越来越多的人正在使用它进行认真的应用。 与Grails相比,Rails在市场上有更多的职位空缺(那就是如果你想投资寻找新的工作)。

框架(Grails和Rails)

但是,作为一个框架,如果你真的关心可维护性,并且需要访问Java框架和遗留的Java系统,那么Grails就可以提供更好的Java访问途径。 Grails本身是建立在几个流行的Java框架(Spring&Hibernate)之上的。 Rails本身恕我直言,就像Ruby本身一样时髦,但它的时髦性使您的可维护性成本。 Matz自己更喜欢Merb而不是Rails 2,因为Rails在Ruby的基础上创建了一个完全违背Ruby哲学的DSL。 而且我认为,因为Rails本身就是自己的意思,而如果你不同意创造者的意见,这可能不适合你的需求。

结论

所以就你的情况来说,学习Grails是公司的共识(你需要尊重共识),如果你仍然想要保证你的工作。 但是,如果你想在未来开创一个新的工作机会,那就花点时间学习Rails和Ruby吧。





groovy