您的位置 首页 电路

《代码整齐之道》精读与演绎】之一 让代码比你来时更洁净

“我们就是一群代码猴子,上蹿下跳,自以为领略了编程的真谛。可惜当我们抓着几个酸桃子,得意洋洋坐到树枝上,却对自己造成的混乱熟视无睹。那堆“可以运行”的乱麻程序,

  “咱们便是一群代码山公,上蹿下跳,自以为领会了编程的真理。惋惜当咱们抓着几个酸桃子,沾沾自喜坐到树枝上,却对自己形成的紊乱视而不见。那堆“能够运转”的乱麻程序,就在咱们的眼皮底下渐渐腐坏。”

  ——《代码整齐之道》作者 RobertC.Martin,于SD West 2007技能大会

  一、系列文章前语

  敲完上面这段文字的时分,心里在想,一个刚踏入编程生计的新人,要阅历多少的淬炼,才干领会到Bob大叔所谓的编程的真理。

  有人说,这个进程会很绵长,大约至少是在读完N本编程范畴的经典著作,并经过许多的考虑与实践之后。

  而写这个系列的原因,正是由于最近闲暇时一向在阅览一些之前一向想看的经典著作,并有将阅览进程中一些考虑和总结记录下来。为了不白费这些阅览、考虑与总结的进程,决议将这些零星的内容收拾成文,沉积下来。过些年后再回首,或许会觉得其时的一些考虑,弥足珍贵。

  这个系列的文章,不仅仅是读书笔记,而是对一本书核心内容的全新演绎,内容解刨,与重组。期望自己的这些文字,能对各位想进一步了解这些经典著作的读者们有所协助。

  二、《代码整齐之道》其书

  《代码整齐之道》(《Clean Code》)是简直每一个对编程境地有寻求、有志于改善代码质量的编程者,都应该阅览的一本好书。

  这本书提出了一个观念:代码质量与其整齐度成正比,洁净的代码,既在质量上牢靠,也为后期保护、晋级奠定了良好根底。

  书中介绍的规矩均来自作者多年的实践经历,包括从命名到重构的多个编程方面,虽为一“家”之言,然诚有可资学习的价值。

  

 

  三、本文触及知识点思想导图

  先放出这篇文章所触及内容知识点的一张思想导图,就开端正文。咱们若是疲于阅览文章正文,直接看这张图,也是能够Get到本文的首要知识点的大约。

  

 

  四、糟糕代码,是怎么产生的

  开始的问题来了,咱们都不喜爱坏代码,为何坏代码还总会产生?

  抛开编程者自身技艺的问题,答案或许是想要快点完结任务,项目进展赶着时刻,或许咱们仅仅不耐烦再持续做这个需求,巴望它能早点完毕。

  许多时分,会有一堆作业压着你去完结,你觉得自己需求赶忙弄完手上的东西,好接着做下一件作业,所以,为了走捷径,为了特定完成功用而强加的糟糕的代码,就悄悄地诞生了。咱们都从前瞟一眼自己亲手形成的紊乱,决议弃之不顾,走向新的一天,等有朝一日再来收拾。

  但是我国古训有云,“明日复明日,明日何其多”,勒布朗(LeBlanc)规律也标明,“稍后等于永不。”你会发现,由于各式各样的原因,许多时分你底子都不会(没时刻)去收拾之前的代码。所以,正如本书作者Robert C.Martin(Uncle Bob),在SD West 2007技能大会上所说的,“那堆“能够运转”的乱麻程序,就在咱们的眼皮底下渐渐腐坏。”

  咱们知道,坏代码会污染环境,最终会坏掉整个项目。坚持整齐的习气,发现脏代码就要及时纠正。花时刻坚持代码代码整齐,不光有关功率,还有关项目的生计。

  五、为什么好代码会很快蜕变?

  为什么好代码会很快蜕变?一般情况下,需求一向在改变、需求改变违反了初期规划、进展太紧是导致好代码蜕变的诱因。

  大都的产品司理想要好的代码,即使他们总是痴缠于进展,他们会奋力的保护进展和需求。而程序员们则当以平等的热心保卫代码的整齐性和可扩展性。

  举个栗子,假如你是医师,患者在恳求给给他们做手术前别洗手,由于那会花太多时刻,你会照办吗?本该是患者说了算,但医师却肯定应该回绝遵照。为什么?由于医师比患者更了解疾病个感染的危险。医师假如按患者说的办,便是一种不专业的情绪。

  同理,程序员遵照不了解紊乱代码危险的产品司理(策划)的志愿,都是不专业的做法。

  六、程序员的根底价值谜题

  程序员都面临着一种根底价值的谜题。有那么几年经历的开发者都知道,之前的紊乱拖了自己的后腿,但开发者担负期限的压力,只好制作紊乱。简言之,他们没花时刻让自己做得更快。

  而其实真实专业的人士理解,这道谜题第二部分说错了,制作紊乱无助于赶上期限,紊乱只会马上拖慢你,叫你错失期限,赶上期限的仅有办法——做得更快的仅有办法——便是一向尽可能坚持代码的整齐。

  七、大师们眼中的整齐代码

  究竟什么是整齐的代码?有多少程序员,就有多少界说。 “大师级程序员把体系当故事来讲,而不是作为程序来写”。就让咱们一同看看经历丰富的大师级程序们都是怎么界说整齐代码的。

  Bjarne Stroustrup ,C++言语之父, The C++ Programming Language(中译版《C++程序规划言语》)一书作者:

  “我喜爱高雅和高效的代码,代码逻辑应开门见山,叫缺点难以躲藏;尽量削减依靠联系,使之便于保护;一句某种分层战略完善错误处理代码;功能调至最优,省得诱惑他人做没规矩的优化,搞出一堆紊糊弄。整齐的代码只做好一件事。”

  Grady Booch,Object Orient Analysis and Design with Application(中译版《面向对象程序剖析与规划》) 一书作者:

  “整齐的代码简略直接,整齐的代码如美丽的散文。整齐的代码从不躲藏规划者的目的,充满了洁净利落的笼统和开门见山的操控句子。”

  Michael Feathers,Working Effectively withLegacy programming(中译版《修正代码的一书》)一书的作者:

  “整齐的代码总是看起来想是某位特别介意它的人写的,简直没有改善的地步,代码作者署名都想到了,假如你妄图改善它,总会回到原点,赞赏或人留给你的代码——全心投入到或人留下的代码。”

  Ron Jeffries,Extreme Programming Installed(中译版《极限编程施行》)以及Extreme Programming Adventures in (C#中译版《C#极限编程探险》)作者:

  “削减重复的代码,进步表达力,提前构建简略笼统,这便是我写整齐代码的办法。”

  八、编写代码的难度,取决于周边代码的阅览难度

  编写代码的难度,取决于周边代码的阅览难度。何出此言?由于各种实践与计算标明,在项目里开发新功用的进程中,阅览之前代码与书写新的代码,花费的时刻份额超越10:1,新写代码时,咱们一向在读旧代码。已然份额如此之高,咱们就应该让读的进程变得轻松,即使那会使得编写进程更难。

  所以说,编写代码的难度,取决于周边代码的阅览难度,想要快速完成需求,想要快速完结任务,想要轻松的写代码,先让你书写的代码整齐易读吧。

  九、让代码比你来时更洁净

  咱们知道,光把代码写好可不行,有必要不时坚持代码整齐,咱们都见过代码跟着时刻的消逝而腐坏。咱们应该更积极地阻挠腐坏的产生。

  借用美国童子军的一条简略的军规,应用到咱们的专业范畴:

  “让营地比你来时更洁净。”

  那么能够相同对编程范畴这样说:

  “让代码比你来时更洁净。”

  也便是说,假如咱们每次签入时,代码都比签出时洁净,那么代码就不会腐坏。这便是咱们需求遵照的代码整齐之道。

  十、本文触及知识点提炼收拾

  文章最初部分现已用思想导图的办法展示了本文的知识点,这边再贴出一个文字列表版,便利咱们收拾:

  1. 编写代码的难度,取决于周边代码的阅览难度。想要快速完成需求,想要快速完结任务,想要轻松的写代码,请先让你书写的代码整齐易读。

  2. 坚持整齐的习气,发现脏代码就要及时纠正。花时刻坚持代码代码整齐,这不光有关功率,还有关项目的生计。

  3. 程序员遵照不了解紊乱危险的产品司理(策划)的志愿,都是不专业的做法。

  4. 让代码比你来时更洁净:假如每次签入时,代码都比签出时洁净,那么代码就不会腐坏。

  5. 赶上期限的仅有办法,做得更快的仅有办法,便是一向尽可能坚持代码的整齐。

  本文就此完毕。

  下篇文章,咱们将持续《代码整齐之道》的精读与演绎,讨论更多的内容。

  Best Wish~

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/dianlu/115140.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部