我和整洁代码的故事
突然想聊一聊我和整洁代码的一些故事和我自己对整洁代码的一些想法,希望能帮助到之前和我一样迷茫中的人。
相遇
一个节假日,我和老婆收拾好行李坐上了高铁回老家,无聊之余我俩看着电视剧。而对面的一个看书的人吸引了我的注意力,他穿着衬衣,个子不高,头顶的头发有点稀松。加上他手上看的“武林秘籍” ,使我确信,他一定是一位“资深”软件开发者,而这个 “武林秘籍” 就是 《整洁代码》。其实在此之前我并没有看到过这本书,也不了解。抱着对大佬的崇拜。后来在双十一的时候,我偷偷的将这本书加入了我的购物车。
还记得刚进入程序员的第二年,刚从学校出来不久,满肚子的计算机基础杂文。却意气风发的想要写出世界上做好的程序。经历了实习阶段和一年多的工作经验后,却越发觉得自己离自己想要的目标太远了。自己的代码写的一塌糊地,功能也是一大堆莫名奇妙的代码拼凑而来,这使我越来越烦躁,没有耐心。觉得写代码真没意思。也对自己产生了怀疑,怀疑自己是否真的喜欢写代码,期间我也请教了我的上级,希望能帮忙找出问题,写出 “优雅/整洁”的代码,然后也没得到很好的答复。
直到工作后的第三年,在高铁上看到的那本书,才真正让我开始了解到了什么是整洁代码。此后我又看了一些相关的书籍,例如“重构”,“设计模式”,“程序员的职业素养” 等。我后悔自己没早点遇到这些书,这才是我想要的。
转变
从此,我开始了重构之旅,我把重构和整洁代码当做编码的一部分。甚至会喜欢去接手别人的代码,对于我来说,我可以找出里面的问题,重构里面的逻辑。也能从别人的代码里学到好的设计模式和编码规范。
理解
程序原本是枯燥无味的代码,如果只是为了实现功能去堆叠代码,而不考虑编码之美,这会使整个过程变得索然无味,更会给后来的维护者带来无尽的痛苦。况且很多情况下后面的这个维护者就是你自己,所以关心别人有时候也是在关心自己。
关于什么是整洁代码很很多不同的理解,我最喜欢的就是这个句:整洁的代码它就像在关心你。优美整洁的代码好像拥有生命,它在关心你,帮助你理解它。甚至它带你穿越到过去,帮助你了解当时开发者想法和当时的业务场景,以及当时的局限,告诉你如果使用它,扩展它,改进它。你要做的就是塑造这样一个“数字生命”,帮助后来的人了解你,了解你现在做的事情。说到这里,让我想起了动漫《吞噬星空》的巴巴塔,它就是一个不朽强者死后留下的一个数字生命,为了传承主人的遗志,帮助罗峰成为强者,拯救了地球。所以说如果你写的代码永远只是为了当下,那么就没有什么东西可以留给以后。