谈谈程序员重复造轮子的几点思考

栏目: IT资讯 · 发布时间: 5年前

内容简介:重复造轮子,大部分一听感觉浪费时间和经历去搞一个别人已经开源的东西,花了时间可能还没搞的别人效果好,何不直接拿别人的过来直接用了,确实非常有道理。而且工作任务完成过程中,有时候工期紧,要求功能又多,很多都需要建立在别人的基础上完成,轻松又快,快速完成交付,老板又赏识,简直完美。以上观点我非常赞成,我也经常这样在工作做,节省的自己的时间。

重复造轮子,大部分一听感觉浪费时间和经历去搞一个别人已经开源的东西,花了时间可能还没搞的别人效果好,何不直接拿别人的过来直接用了,确实非常有道理。

而且工作任务完成过程中,有时候工期紧,要求功能又多,很多都需要建立在别人的基础上完成,轻松又快,快速完成交付,老板又赏识,简直完美。

以上观点我非常赞成,我也经常这样在工作做,节省的自己的时间。

但是还有另外一个角度,抛开工作工期,有交付压力的情况下,个人觉得有想法的情况下有必要去造轮子,经常从网上或身边听到某某面试,问他简历上的东西,比如部署过某某产品,面试官问怎么部署的,面试者回答拿公司现成的 工具 部署的啊。显示这不是面试官想要的答案,但站在面试者的角度上确实说的是实话,的确干过这个项目,也确实都是公司现有的工具,尤其在大公司,这种现象可能多一点,因为流程工具都非常完善,只需关心业务就好了,但可能业务写多了就变成CV(复制粘贴)大神。

就像是学知识一样,只有把别人变成自己的,然后再去实践才是真正的懂了。互联网技术个人感觉写出来和会用是完全两回事。只有真正去写的时候才知道坑在哪里,是不是哪里线程不安全啊,高并发的情况如何保证数据一致性啊等等。

所以从个人成长的角度出发,重复造轮子还是有必要的,当然得抛开工作交付压力的情况下,强调这个是因为实际工作项目中,用别人更好的且已经完善的东西,显然对项目本身来说是非常好,拿公司钱就得把事情做好。在业务没有交付压力的情况下,个人建议多尝试先想自己如何实现,就算之后用的别人的东西,你看看源码,知道人家如何实现,也就不会出现上面说的面试中遇到懵逼的问题了,简历上自己的项目如果都回答不好,会给面试官不太好的印象。

2. 谈谈我从造轮子里的收获

简单谈谈我造轮子中的收获吧,比如写技术博客,很多知识点网上很多已经写过了,如果这样是不是觉得没必要写了,直接看就好了,个人实践发现写的过程中还是有些知识点写的时候才发现原来之前都理解错了,同时更加能加深对知识点记忆。比如我写了上一篇 MySQL 索引原理,现在对B-Tree数据结构和磁盘原理理解比较清晰点,以前就觉得这种高级数据结构离我很远。

去年我重新造轮子封装了一个非常轻量的ORM,缘起也是因为业务中用别人的有点不爽,就想自己看看能不能封装一个,平时也没有时间去写,就国庆在家撸了7天。写完之后,遇到很多坑,再去看牛人写的ORM,才知道代码还可以这么写,对MySQL的语法和ORM的常规实现都有了一定的理解。之前也还造过类似elasticdump的脚本,费了很大神,运行一段时间才知道有elasticdump的存在,果断换了elasticdump,虽然结果上最终用了elasticdump,但是过程还是蛮多收获,同时也会激起你去看源码的冲动。

最近在接触项目里有接触到RPC,我就有想法去了解原理,重新造轮子,但你可能会问时间和精力问题。工作时间内去造这种轮子,是不太现实的,确实。只有牺牲自己的业余时间,去写这种对自己能力提升有帮助的轮子,这是值得的。之前看动漫,主角修仙者都是闭关多久出来才成了厉害角色,角色只是让我们看到了结果,但是想想闭关期间,吃饭睡觉都在修炼,所以要想成为大牛。

哈哈,鸡汤帖结束,希望大家事业上都能修道成仙,来分享你的故事。

更多精彩文章,欢迎关注公众号: 「天澄技术杂谈」

谈谈 <a href='https://www.codercto.com'>程序员</a> 重复造轮子的几点思考

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

查看所有标签

猜你喜欢:

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

决战大数据

决战大数据

车品觉 / 浙江人民出版社 / 2014-3-1 / 45.9

[内容简介]  大数据时代的来临,给当今的商业带来了极大的冲击,多数电商人无不“谈大数据色变”,并呈现出一种观望、迷茫、手足无措的状态。车品觉,作为一名经验丰富的电商人,在敬畏大数据的同时,洞悉到了数据时代商业发展的更多契机,他创新了数据框架的建立和使用,重新量化了数据价值的指标,并挖掘了在无线数据和多屏时代下商业发展的本质……在他看来,改变思维方式,即可改变数据和商业的未来。  ......一起来看看 《决战大数据》 这本书的介绍吧!

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

在线压缩/解压 JS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换