《代码整洁之道》读后感

        今天才终于拜读完这本书,现在才知道自己之前所谓的编程,只是像猴子一样在完成一个个需求任务,要想由代码猴子转到童子军还有很长的路要走。本书内容的精深并非一朝一夕所能领悟,需要在以后的实践中践行之、学习之。尽管如此,尚有一些领悟,谨记于此。

        无论何事,做容易,做好难。“穷尽应知之事,对其烂熟于心,刻苦实践”是做好一件事的基础,代码的编写亦是如此。只有我们知道了什么是高质量代码?怎样编写高质量代码?才有可能写出重构出令人满意的代码。

        代码的质量首先与其整洁度是成正比的。整洁的代码只做好一件事,从不隐藏设计者的意图,充满干净利落的抽象和直截了当的控制语句。Ward Cunningham的一句经典的话“一块代码专为解决某个问题而存在”。有意义的命名是代码可读性和实用性不可或缺的元素,命名的好坏体现的是编码者的描述技巧和文化内涵,如果命名的名称还需要注释来补充,则说明名不富实,则命名一般存在缺陷。函数是程序中用的最多的元素之一,应以短小、功能唯一、参数少而为佳。写好函数不是一蹴而就,应循序渐进,由初稿通过单元测试再进行打磨封装,最终得到满意的结果函数。对于注释,曾经完全放大了它的作用的理解,现在明白,注释不过是对代码表达意图时遭遇失败的补偿,不过对于糟糕的代码加注释只是徒劳的。对于不同的人,会喜欢不同的编码格式,但对于一个团队所要做的就是统一的一套管理代码格式的简单规则,并惯行之。代码里的对象和数据结构,我们在使用它们之前要明白,对象暴露行为,隐藏数据。我们要通过学习性测试要使用的API,并要足够重视测试代码,每个测试一个断言、每个测试一个概念。代码里的类的编写要符合单一权责原则(类或模块应且只有一条加以修改的理由)。修改应借助接口和抽象类来隔离细节的影响。对于系统的设计,应该使得系统与构造分开,构造与使用分开。而最佳的系统架构由模块化的关注面领域组成,不同的领域之间用不具有侵害性的方面或类方面的工具整合起来。最佳的系统设计方案,应选择最简单的可工作的方案。在保持系统短小精悍的同时,应尽可能保持函数和类的短小。可通过代码重构,提升内聚性,降低耦合度。而并发编程是一个及其复杂的过程,是一种解耦的策略,还需要自己深度的研究。无论你怎样对源码进行重构,其原则都应该是,不改变系统工作的目的和实时状态。

        不过,即使你了解了以上所有规则,也不要妄图代码初稿就去完全遵循规则去编写,应该以一种循序渐进的过程来一步步完善重构自己的代码,直到接近完美。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值