Ruby/Rails为什么不如以前热门了?

栏目: Ruby on Rails · 发布时间: 8年前

内容简介:Ruby/Rails为什么不如以前热门了?

最近在知乎上看到了一个问题,问“Ruby和Ruby on Rails在2017年还有前途吗?”我觉得这个问题很有意思,因为其实 Ruby 圈子里不少很资深的朋友,都转行去做别的了,有做前端的,有做Go,还有像我开始做Nodejs了。给人的感觉就是Ruby不行了,圈子也不够活跃了,

下面我来分析一下Ruby/Rails为什么最近声音小了。首先看大公司为什么很少用rails,据我所知有

1. rails的性能和内存占用不理想,规模效益不高

2. ruby作为动态语言在大团队开发上存在劣势,不能像 java 有接口和静态类型检查,能够帮助大团队在开发期减少Bug。

3. 小众语言,招人(相对)困难

4. rails本身是单块设计,而且很多地方并不OO,不适合大公司拆分、细化、优化的诉求

而rails更多是创业小公司在用,我的经验包括:

1. 全栈框架,有自己的前端逻辑

2. 完善的生态

3. 开发速度快,对人员数量要求少

4. 学习曲线很线性,容易培养(全栈的)开发人员

对于小公司来说,本身资金有限,人力成本又占主要部分,产品不确定性大,所以选择走小团队,快速开发的模式是很自然的事情。而大公司,往往有完善的体制——招聘、培训、管理,等等——支持,所以往往是希望能通过增加人手来扩大生产规模以及完成更多的产出,这就要求开发 工具 有足够的“工程性”。这跟Rails的理念就是相违背的,而Ruby的工程性也不如Java之类的好。

大家再回想一下这几年中国经济形势如何?实体凋敝,房价暴涨,很多人都觉得创业还不如买几套房子。这样创业公司少了,用Ruby/Rails的自然也少了。

再看这几年的技术发展趋势,一个是经过多年的发展,当初Ruby/Rails的很多先进思想也都被其他语言和工具吸收了,开发效率上的领先已经达不到最早那种数量级的差异。

同时很多开发者已经熟悉了自己的一套框架和工具链,如果实现相同功能,没有十足的必要学习另外一种新的技术。

而只有前端不一样,浏览器只支持JavaScript,整个前端的生态又顺理成章建立在了nodejs之上。加上手机客户端又适逢新兴的移动互联网浪潮,需求量突飞猛进。前端、客户端之前的积累也比较少,加上需求的推动,有很大的空间来造轮子。

所以Ruby/Rails近几年声音变小也是正常现象,即使我认为目前在开发体验上还没有能超过Rails的全栈框架。

从产品角度来看,早年开发产品拼技术,主要看你东西能不能做出来。后来开始拼产品设计,又讲究快速开发和快速试错。以前在Web时代,Rails在这些方面都有优势。而到了移动时代,产品设计和快速迭代的主要部分从后端移到前端,让后端开发变成了一个配角,尤其是后端开发在早期阶段的重要程度也降低了。

然而事到如今,各端入口都被占据,流量、用户基本被巨头们瓜分干净,各种现成的平台服务也层出不穷,又进一步让技术的重要程度又降低了。想想做一个公众号,用现成的平台,经营好粉丝就能拉投资捞钱;或者在现有平台上开个微店来做生意。现在很多创业门槛完全不在技术方面,技术的重要程度被大大降低。

而往后看,VR、人工智能、大数据、IOT等等也都不是Ruby所擅长的领域。

种种加起来,可以看到Ruby/Rails几乎不可能再掀起新的浪潮。总结了这么多,就是,Rails本身所擅长的领域在现在已经变得很狭窄也不那么重要了,所以才声音小了。任何技术也都有他的生命周期,Ruby/Rails是非常优秀的技术和工具,如果你要做的事情符合他的目标,那它依然是一个很棒的选择。

链接:https://zhuanlan.zhihu.com/p/25007358


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C++程序设计

C++程序设计

谭浩强 / 清华大学出版社 / 2004-6-1 / 36.00元

《C++程序设计》作者深入调查了我国大学的程序设计课程的现状和发展趋势,参阅了国内外数十种有关C++的教材,认真分析了学习者在学习过程中遇到的困难,研究了初学者的认识规律。在本书中做到准确定位,合理取舍内容,设计了读者易于学习的教材体系,并且以通俗易懂的语言化解了许多复杂的概念,大大减少了初学者学习C++的困难。C++是近年来国内外广泛使用的现代计算机语言,它既支持面向过程的程序设计,也支持基于对......一起来看看 《C++程序设计》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码