Rails 使用 Ruby on Rails 开发与 Java 相比有何优势呢?

mumu · 2016年01月12日 · 最后由 michael 回复于 2016年02月09日 · 10620 次阅读

接触 ruby 三月有余,未使用过 java, 公司最近考虑 rails 与 java 选择问题, 请问大家觉得 rails 与 java 相比有什么优势呢?

rails 开发效率快 java 运行效率高

一个是快乐编程,一个是痛苦敲代码

#2 楼 @hxh1246996371 Java 也没那么痛苦吧,我觉得痛苦的是 XML 😭

#3 楼 @helperhaps 现在都可以做到零配置了

#4 楼 @lina 虽然没怎么去了解,但你所谓的 0 配置,指的是开箱 0 配置吧,真正用的时候,还不是得看 XML 到吐 之前配置好一个项目 beanfactory 过了一年,就不敢去看了,头晕

做 web 项目的话选 rails。做大数据的话用 java 方面比较好吧

servlet3 已不需要 web.xml,spring mvc 也不用 xml 配置路由,基本都改成注解方式,也就 mybatis 之类的才需要了。最近用的多的一个 java 框架用 json 配置 ioc 之类的

Ruby 更灵活,Java 更死板。 这两个特性各有好坏,看你们公司文化。

11 楼 已删除

我觉得这个主要看公司实力,java 开发周期长也是可以靠人多来弥补的,有财力可以直接上 java,财力不够强大还是老实用 ruby 吧。财力不够很容易,还没有开发完项目,已经把自己饿死了...

可以对比了解下 rails 和 spring-boot 吧。

rails 开发招人不易,但开发效率的确高。 spring-boot 招人容易,开发效率相对 rails 要慢些(估计是我功力不深吧)。

对于初创公司,我觉得最稳妥的方案是 ruby + node.js/go,java 的开发效率是不高

这样和你说吧,目前我所接触到的 ror 都是从 java 转过去的,至于为什么转肯定有它的道理的。楼上都解释的好清楚了

我一线公司 Java7 年。现在在学习 ruby,Java 运行效率确实高,但给我印象最深的就是重,Java 太重了。Jdk8 之前连个 lambda 语言都不支持。数组操作笨拙,集合排序要还幸亏有 apache 的 common 包,以及 google 的 guava,要不然分分钟狗带。

如果没有行业限制,前期用 ruby,后期改 java

18 楼 已删除
19 楼 已删除

#13 楼 @zhangsm spring-boot 真是一个相当重的框架呐,只能说 spring 好全,基本上什么场景的应用都可以搞一下。rails 就比较擅长 WEB 啦。Java 的好处可能好似够工业化吧,毕竟编译器能消灭很多脑袋短路的错误。缺点也很明显,人生三分之一的时间在编译和重启……

#20 楼 @akirapanda 赞同,特别是最后一句。一直在重启,一直编译。。。哈哈。

#22 楼 @lvjian700 有时候「做完」才是刚刚开始。

java 人多,ruby 合适的人确实不好找,这一点对公司来说很重要。。

ruby 看创造力 java 看人力

26 楼 已删除

rails 写起来爽一点啦。。。

java 运行起来爽。。。。

#23 楼 @seabornlee 哈哈,有道理。后期维护是重头戏。

Java 本来是挺快的,然后你需要"架构", 要架构得足够灵活,你就重新发明 Ruby 的一部分... 花了很多功夫写额外的代码,最后你就得到了 Rails 或者更差的性能和基本看不懂的代码

#27 楼 @jasonliu 666 应该还要本元编程

java 更工程化,出错也容易修复。rails 需要大量的测试来解决问题,实现方式更灵活,速度快,适合早期功能验证。

#27 楼 @jasonliu struts, 还有人用 struts?多年前用 struts 想吐,想不到现在就看到一下,还是想吐!

#20 楼 @akirapanda #21 楼 @zhangsm 超级赞同,一直在重启,一直编译,烦闷到极点。体验过 Ruby,nodejs,碰都不想再碰 java。 还有几分之一时间在启动 eclipse,除非你是那种入职时启动,离职时关闭的主。

补充一点, JRebel 可以帮助 java hot deploy,但收费!

最近用 java 的类似 sinatra框架sparkjava开发两个api, 在eclipse开发,感觉服务启动速度比rails` 快,不过麻烦就是开发调试需要不断地关闭重启服务。

个人感觉这几年 .NET 是越来越好啦

#38 楼 @huobazi 那估计是你没真正用。。

#39 楼 @ericguo 我用了 13 年了,从 1.0 beta2 开始学,1.1 开始正式工作,到现在一直都是做 .NET 的。

#40 楼 @huobazi 我也是 1.1 开始的,这个是号称宇宙最好 IDE 的 VS2015 在 Windows 7 32 位企业版的安装截图。

其他我就不说了。

2016 年居然还能看到这个问题,Ruby 社区任重道远啊。

用不用 Java 平台(不一定是 Java 语言)基本上只取决一件事:要不要大数据分析

#42 楼 @nouse 还有要不要做 Android 原生应用呢。

#43 楼 @lgn21st 还有一个理由就是下载 maven 的速度够不够快,机器内存够不够大,经常下载 maven 的时间都可以打个盹了。

楼主看看《程序猿的呐喊》就可以了。

46 楼 已删除
47 楼 已删除

#35 楼 @boyishwei 这点 Java 确实太痛苦,特别是 EE, 改一点就要重新编译,deoloy, 运行。每天重复这些,浪费的一半的时间。另外如果出错,StackTrace 的几十层 call stack, 就看的眼晕,再加上又被加了无数层 proxy, 那叫一个抓狂。 用了 Ruby on Rails 之后,Java EE 这些玩意是碰都不想再碰。 Play Framework 到是不错,热编译,性能也不错。一般中小应用也够了。

说到热编译、热部署,都不如 PHP 啊,rails 部署到服务器还得几十秒呢,PHP 瞬间秒级部署。 感觉所有需要编译的语言都不适合 web 开发。

#15 楼 @easonlovewan 接触编程两年,阴差阳错 ruby on rails 成了我学习的第一门语言和框架。。泪流满面

快速出 prototype,验证 idea

52 楼 已删除
53 楼 已删除
54 楼 已删除
需要 登录 后方可回复, 如果你还没有账号请 注册新账号