为什么 ror 在国内 这么多年,还是不火呢?
其实无非就是一句:学校不教。。 而且 Ruby 风格和学校常教的 C++,Java 相差较大,因此上手难度比 Javascript 和 PHP 高了不少。
但是其实火不火重要吗?
从个人的角度来讲,ruby 的待遇并不高,同样的经验给的工资和 java 差不多。新手的话,安卓 iOS 的开发者待遇都比 ruby 高。自然也就不会有很多个人投入时间去学习。因为用已经会的(比如 java),或者学新的(手机应用)都可以获得只高不低的收入,那为啥要投入精力去学呢?
站在公司角度,不差钱的根本无所谓多招几个写 java 的,差钱的找 ruby 的更难。中国的人力讲到底还是便宜的,所以公司并不感觉人力成本很高,需要减少人员。而 ror 并不能保证就做出市场接受和需要的东西。真的有想法有设计能力,那么用 php 实现了也照样可以发财。
多数公司都会考虑一些“成熟方案”,像 Java 或 C#,甚至 PHP 之类的。 有些公司的技术高层都是年纪比较大的,想接受 ROR,有点难啊。
ROR 可能比较适合创业型的公司吧。
我大脑中的 PHP 很强悍,有 rails 进来时,直接攻击,现在有什么事,还是 php 第一时间告诉我该怎么做,ruby 多优雅与我无关,php 的笨方法告诉我,php 一定可以的。
本来想用 rails 在业余时间把一个 PHP 写的网站所有的代码重新用 Rails 写一遍,但现在内部决定为了节省开发时间直接上 discuz,好了,我又回去折腾顺手的 php 了。
现在国内用户对 discuz 的接受度相当高,是有点审美疲劳,但至少用户习惯了,很多功能不用开发了。UCenter 一站式搞定用户系统,比 OAuth 还是好用,现在钓鱼这么多,大家不太愿意在一个网站上用 qq, sina, facebook 登录。
其实有不少项目并不赶时间的。开发效率高低也不是太关键。 另外,现在很多项目分工很细,像 Rails 这样什么都包了的,也就是创业项目比较常见吧。 一般大点的项目都有专业的 DBA,QA,前端开发,后端程序员,还会有架构师等等。 可能用了 Rails 之后就一个人全包了,呵呵。
在我工作的第一年里,一下子应用了三种语言,ruby、java、PHP。以前是学 java 的,现在主要做 ruby,偶尔会接到 PHP 的任务,我自己是倾向学 ruby,忙起来都不能专心研究一个。感觉真的很烦。
学校里的情况... 学校里不教,因为教 Java, 用 Java 来写 Web 应用的人就很多,Java 又不适合学校里的小团队, PHP 因为一些校内站点想引入的论坛系统有对应的实现,于是就一直都有人在折腾. 不教,又没有直接的需求,只能靠自己装逼去折腾.. 但现在选择实在很多嘛..
#52 楼 @jiyinyiyong 正解啊,反正对我们有更好帮助的,更适合我们口味的技术知识,大学都不教。都要依赖自己上网,偶尔看到了,或者翻杂志,才知道有那么多酷的东西。
ROR 的设计逻辑新手不是那么容易理解,当然用的人就少,但是不代表它不好用,而且 ROR 不管开发和运行都要依赖 Linux 和 BSD 等类 UNIX 系统,又吓跑一大堆人
现在去找程序员工作都需要“自带技术”,公司不负责培训,甚至连电脑都要自己带,国内程序员这个行业人员流失又很严重,净是新手,当然用 ROR 的人就少
只有对 web 开发有相当的了解以后,才能明白 rails 的好。javascript、css、表单、ajax 这些概念都不明朗的新手,对 rails 只能一头雾水
#53 楼 @jeremy16601 不妨看看 Java 介个框架: https://github.com/allwefantasy/ServiceFramework