作为一名程序员,你最喜欢的座右铭是什么?

Greg McCann是这样讲解他的座右铭的:
“It is better to be clear than to be clever.”——“做的清晰比做的聪明更好。”

图片来源:摄图网

我曾经读过一个故事,讲的是一个聪明的年轻人在计算机科学课上参加考试。当老师归还论文时,他的一个答案被标记为“非常聪明-减去5分”。当时,我认为这是非常不公平的。老师为什么不认可这种解决问题的方式呢?他可能只是嫉妒,因为自己没有想到这个答案!

但现在,经过几年的工作经验,我认识到老师才是正确的。

你知道,通常有很多方法可以让计算机完成某项任务。有时使用一种“巧妙”的解决方案———用一种巧妙的算法将多行代码浓缩成一个,或者使用一些晦涩的语言特征以一种新颖的方式完成一项任务,对于一些程序员来说是很诱人的

但是,任何重要的软件都需要定期更新和维护。之后工作的人(没准就是你自己)可能将在六个月或六年后研究这个代码,那时你再想知道它是如何工作的,以及它应该做什么,就不会认为这个“巧妙聪明”的代码很棒了。

善待那些编写代码时,让别人可以很容易地理解代码含义的人,即使它可能需要几行代码。

实际上工作中只有很少的情况,是需要“聪明”的代码的。

大多数情况程序员都需要拥有非常“慷慨”的注释,详细解释你做了什么,为什么的代码。这为之后工作的程序员(可能是未来的你)节省理解和更改的时间,后续的工作人员也会因此而感谢你。

在编程工作中学会清晰而合理地编写代码行,事后你不会因此感到沾沾自喜,但你会养成更好的思维习惯,树敌更少,甚至可能改变一些顽固的想法。

想更清晰的了解IT职业规划和学习路线,欢迎关注IT范私信询问。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,559评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,734评论 25 709
  • 本文把程序员所需掌握的关键知识总结为三大类19个关键概念,然后给出了掌握每个关键概念所需的入门书籍,必读书籍,以及...
    dle_oxio阅读 13,829评论 6 244
  • MVP不是用来回答设计是否优雅,技术是否高效的具体问题,而是用来验证产品是否能被用户接受,是否愿意为产品买单的根本...
    文文文文西阅读 4,282评论 0 1
  • 一 .集团公司的年中会上 背景交代:集团公司刚调来一位年轻的,新区域经理A总。区域下由各代理客户分包市场。 ...
    苏菲亲子阅读 2,929评论 0 2