postgresql易学堂_程序员最重要的就是学会“不写代码”
对什么说“不”
学会说“不”是一个好的开端。
但是到底是对什么说“不”,又是什么时候适合说“不”呢?
这的确是大多数程序员,甚至是那些高级程序员都很容易混淆的一个重点。
作为一名程序员,编写代码无疑是你职业中最重要的部分。在你的编程生涯中,你不可避免的地将会处理各种关于不同类型代码的请求。而每个请求都可能会迫使你做出一些艰难的决定。这些看上去一切正常,似乎也没什么错。毕竟,这是所有人对你的期望:作为程序员就该编写代码。然而,这里有一个问题:你是否应该编写向你请求的所有代码?
这个问题给我们引入了一个程序员所能学到最重要的技能:
知道什么时候不编码可能是程序员所能学到最重要的技能。——《可读代码的艺术》
对上面这句话,我完全同意。这是为什么呢?
编程是解决问题的一门艺术。因此,自然而然地,程序员成为了问题解决者。作为程序员,当我们面前有一个新问题有待解决,或因为任何其他原因需要我们写出代码行时,我们会因为使命感而感到兴奋。
有这种兴奋也是再正常不过的,毕竟我们是程序员,我们就是喜欢写代码。
然而,对编写代码这件事过于兴奋就会让我们变得盲目。这种情绪会让我们忽视了一些重要的事实,而这些事实可能导致更大的问题,让我们在未来不得不再去解决这些更严重的问题。
那么,我们往往容易忽略哪些重要的事实呢?
你写的每一行代码都是:
必须被其他程序员阅读和理解的代码
必须被测试和调试的代码
会增加软件缺陷的代码
可能会在将来引入新 bug 的代码
正如 Rich Skrenta 所写的,代码是我们的敌人:
代码可谓是邪恶的。代码会腐烂。代码需要定期维护。它们总是包含有待发现的 bug。而新特性的添加总是意味着旧代码必须进行调整。
代码量越大,bug 所能藏身的地方就越多,且 checkout 或编译代码所需的时间就越长,而新员工理解这个系统所需要的时间就越长。这还意味着,如果你需要重构代码,需要挪移更多东西。
此外,更多的代码通常意味着程序拥有更少的灵活性和更少的功能。这一点乍一看是违反直觉的,但确实很多时候,较之一个才华平庸的程序员所编写的冗长混乱的代码,一个简单优雅的解决方案能运行更快,且其功能会更通用。
代码都是由程序员编写的。所以编写更多的代码往往需要更多的程序员。而程序员之间的沟通成本是以 n²的速度增长的,然后,这些程序员写的所有代码都添加到系统,在扩大系统功能的同时,也会增加整个软件工程的运营成本。
我说的这些都是真的,难道不是吗?所以,那些用他们的生产效率和编程思维来激励你的伟大程序员们,都是那些知道什么时候该说“不”,什么时候不编程的人。易于维护、持续寿命长、不断帮助用户实现功能的那种软件,应该不包含任何不必要的代码行。
最好的代码其实是没有代码,而最有效率的程序员知道什么时候不应该编码。
来源:oschina
链接:https://my.oschina.net/u/4313733/blog/4355047
postgresql易学堂_程序员最重要的就是学会“不写代码”相关推荐
- 程序员坐牢了,继续被安排写代码。。
今天给大家分享一篇有意思的爽文,但也是根据多年之前一个真实报道改编而来的.本文字数较多,建议先收藏,上下班路上.带薪上厕所.浑水摸鱼时再慢慢看~ 本故事纯属虚构 请大家不要随意模仿,后果自负! - ...
- postgresql易学堂_起卦方法需要多少克?_最准确的起卦方法
周易延伸出来姓名学起卦方法华夏博学苑发布时间:08-0323:31姓名学渊源于我国诸先贤的哲学思想,是我国的国粹,古代中称为一门玄学,经历不断地发展,后由我国传至... 兴易学堂性别:女所占事情:老妇 ...
- 增删改查java代码_程序员:听说你正在为天天写增删改查代码而烦恼
有相当多的一部分程序员一直都只接触业余应用的功能,天天写业务代码的程序员也被戏称为CURD程序员,CURD就是增(create).改(update).查(read).删(delete)的意思. CUR ...
- c语言sin程序怎么写_程序员求职简历,项目经验怎么写?免费修改简历并提供简历模板...
我是一个典型的互联网公司程序员,在BAT有超过10年的工作经验,面试超过200个程序员.也见过无数的程序员简历,包括很多优秀的程序员简历,看了可以让人眼前一亮,优美简洁的简历模板,项目经验工作重点突出 ...
- 新华三发布H3C Workspace数字工作空间:只需一张屏,程序员也能随时随地在云上写代码
随着数字时代的不断发展,工作模式经历了面对面的"纸+笔"模式.办公室场景下的"PC+电脑"模式.以及远程办公场景下的"手机+协同软件"模式, ...
- @程序员,你哄女朋友要是有写代码那么 6,你早就脱单了
一对情侣吵架后冷战,过了N个小时以后..... 女生:我觉得我说声我错了,你说一声我错了,这个事儿就算过了,我们不就和好了吗? 男生觉得好像有道理,犹豫着说:要不你先说? 女生撒娇着说:你先说嘛~ 男 ...
- 程序员:5人停电去网吧写代码,被当成黑客报警了,网管:想偷我戒指
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 如果要问当前最炙手可热的专业是什么?估计大部分人都会 ...
- @程序员,你哄女朋友要是有写代码那么6,你早就脱单了
01 一对情侣吵架后冷战,过了N个小时以后..... 女生:我觉得我说声我错了,你说一声我错了,这个事儿就算过了,我们不就和好了吗? 男生觉得好像有道理,犹豫着说:要不你先说? 女生撒娇着说:你先说嘛 ...
- 程序员看过来:阿里毕玄提升代码能力的4段经历
简介:对于程序员而言,我始终认为代码是展现能力的关键.一个优秀程序员写的代码,和一个普通程序员写的代码是很容易看出差别的,代码是展示程序员硬实力的名片.如何提升写代码的能力,始终是一个关键的话题,不过 ...
最新文章
- [UWP] 用 AudioGraph 来增强 UWP 的音频处理能力——AudioFrameInputNode
- C++vector迭代器失效的问题
- win7 登录界面---管理员账户禁用与显示
- 快速理解mysql主从,主主备份原理及实践
- 实验十 配置EIGRP协议
- codevs1287 矩阵乘法
- 表单的管理作业及答案
- 对《谈谈培训机构的骗局给新人一些建议》这篇博文的个人评论
- 浅谈 js 数字格式类型
- 使用IB时设置textView属性崩溃
- how to catch out of memory exception in c++
- Django框架第一篇基础
- figtree需要在JAVA下运行吗_用一个Java程序出问题了
- win 10 安装nginx
- 如何提高抗压能力和适应能力
- HMC_Recovery_V7R730 安装步骤
- 人工智能研究中心快递柜——代码分析六
- 适用于QMK的键值修改软件VIA
- Word中字号和磅值的对应关系
- c# .net 16进制转换10进制