博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ruby的声誉(翻译,简学互动)
阅读量:5745 次
发布时间:2019-06-18

本文共 1543 字,大约阅读时间需要 5 分钟。

亚当·霍金斯的这篇触动了我。Rails作为一个行业的当前状态和趋势最近一直在我的脑海中。

在短短10年间,我们已经从“如何构建一个博客,15分钟的演示(wups !),成长为web基础设施的一部分,成千上万的职位——包括我。它只是令人兴奋的我们已经走了多远。这是因为纯粹的辛勤工作和奉献精神,来自(相对)少数人,他们痴迷于让web开发更好、更聪明和更加充实和有意义。

但随着Rails的大规模增长,对于我们创建和维护Rails应用程序的人意味着巨大的责任,甚至更多的责任,对即将到来的Rails开发人员培训和指导。

我相信任何开发Rails一段时间的人,一定继承了有绝对巨大Gemfiles的应用程序。当然,Rails本身只是一组gem,但当审计这些应用程序似乎也保证将会有大量的过时和废弃的gem,gem本质上是俏皮话或猴子补丁,完全未测试(或者更糟,严重考验),或非常令人担忧的是,出现新的和闪亮的gem——经常有too-clever-for-their-own-good dsl——影响了整个应用程序的设计和架构,移除它们需要大部分重写(你的测试覆盖率看起来怎么样?)

Rails的这种印象,严重损害Ruby和Rails开发人员的声誉,更严重的是,Rails和Ruby本身。

我们怎么会在这里,开始改善我们需要做什么?

我认为我们到达这一点的部分原因是,Ruby和Rails很容易玩!这样他们有些是自己成功模式的牺牲品。我坚信,玩耍是绝对最好的学习方法,而实验新技术对成为更好的开发人员是至关重要的。但作为一个开发人员对客户(无论是作为一个自由职业者,承包商或雇员)有很大的责任。作为开发人员关心我们构建的产品,我们的客户的幸福和成功,Ruby,Rails和Web开发人员的声誉,我们需要确保我们都实践和教授负责任的开发。这意味着对你编写的代码和引用的代码负责。

只是因为有一个gem,似乎立即解决你的问题并不意味着你应该将它添加到您的项目。阅读代码,阅读测试,了解它是如何工作的,它做什么,不做什么,依赖它,它是如何支持,开发人员应对问题和PR吗?非常重要的是,考虑删除它有多么困难。如果它将“聪明”地改变应用程序编码的方式,它可能不是一个好的选择。仔细考虑这些东西,在添加到Gemfile之前。

问问你自己你认为这个问题应该如何解决。如果你使用它在一个应用程序中,使用清晰和明确吗?当你离开了项目而一些可怜的人继承了您的代码,新的开发人员要了解发生了什么,或者他们会开始检查git日志和诅咒你的名字吗?

我们需要考虑我们如何鼓励负责任的开发实践在刚开始的Rails开发,同时也不阻止玩和实验。

我最近跟一个成功的CEO交谈,快速增长的公司,其业务是基于一个大型的Rails应用程序。到目前为止,Rails兑现了所有的承诺,帮助他现在的公司。但是现在,很久以前似乎无害的开发选择,开始妨碍公司开发新特性和测试新的经营理念的能力。这绝对不是我第一次听到这个问题。

正如我之前说的,这是开始影响Ruby和Rails开发人员的声誉。也许我担心这只是我自私,但如果Rails得到一个坏名声,我也受影响。Ruby是比这更好的。Rails是比这更好的。我们是比这更好。

我完全支持亚当在他的帖子所有的观点。如果你是一个Rails开发人员,我强烈建议你阅读和考虑他的建议。但请不要停止玩,尝试,最重要的是,在Ruby中享受工作。


广告时间:

Ruby是知识海洋的贝壳,一起来捡吧。

高性价比培训:

  • 一个月短期培训,自由学习无压力

  • Rails网站开发入门,费用499

  • Ruby和Rails课程,可以为进入编程领域做准备

欢迎了解和交流

链接:

微信订阅号:简学互动Ruby(jxhd-ruby)

转载地址:http://jaazx.baihongyu.com/

你可能感兴趣的文章
kafka Corrupt index found
查看>>
PoE
查看>>
《JAVA与模式》之适配器模式
查看>>
采用spring+structs+hibanate框架开发javaWeb项目
查看>>
数据库和表的管理
查看>>
redis 常用命令
查看>>
LVS+Keepalived高可用负载均衡集群架构
查看>>
烂泥:kvm安装windows系统蓝屏
查看>>
iPhone开发面试题--葵花宝典
查看>>
EdbMails Convert EDB to PST
查看>>
The Euler function(线性筛欧拉函数)
查看>>
POJ 2184
查看>>
存储过程简单实例
查看>>
大话 程序猿 眼里的 接口
查看>>
struts2用了哪几种模式
查看>>
replace函数结合正则表达式实现转化成驼峰与转化成连接字符串的方法
查看>>
ubuntu 初学常用命令
查看>>
num+=num 与 num = num+num
查看>>
WCF客户端与服务端通信简单入门教程
查看>>
判断是否含有中文
查看>>