Greg McCann是这样讲解他的座右铭的:
“It is better to be clear than to be clever.”——“做的清晰比做的聪明更好。”
我曾经读过一个故事,讲的是一个聪明的年轻人在计算机科学课上参加考试。当老师归还论文时,他的一个答案被标记为“非常聪明-减去5分”。当时,我认为这是非常不公平的。老师为什么不认可这种解决问题的方式呢?他可能只是嫉妒,因为自己没有想到这个答案!
但现在,经过几年的工作经验,我认识到老师才是正确的。
你知道,通常有很多方法可以让计算机完成某项任务。有时使用一种“巧妙”的解决方案———用一种巧妙的算法将多行代码浓缩成一个,或者使用一些晦涩的语言特征以一种新颖的方式完成一项任务,对于一些程序员来说是很诱人的。
但是,任何重要的软件都需要定期更新和维护。之后工作的人(没准就是你自己)可能将在六个月或六年后研究这个代码,那时你再想知道它是如何工作的,以及它应该做什么,就不会认为这个“巧妙聪明”的代码很棒了。
善待那些编写代码时,让别人可以很容易地理解代码含义的人,即使它可能需要几行代码。
实际上工作中只有很少的情况,是需要“聪明”的代码的。
大多数情况程序员都需要拥有非常“慷慨”的注释,详细解释你做了什么,为什么的代码。这为之后工作的程序员(可能是未来的你)节省理解和更改的时间,后续的工作人员也会因此而感谢你。
在编程工作中学会清晰而合理地编写代码行,事后你不会因此感到沾沾自喜,但你会养成更好的思维习惯,树敌更少,甚至可能改变一些顽固的想法。
想更清晰的了解IT职业规划和学习路线,欢迎关注IT范私信询问。