骚气的代码(写出一手骚代码)
骚气的代码(写出一手骚代码)· 代码应该少这里有两条书写整洁函数的黄金定律:前些年阅读过《代码整洁之道》,当时对这本书的理解有限,还在写着一些垃圾代码。后来的工作中,对这本书反复阅读,有了一些体会,更是将这些收获运用到工作中来。个人对这本书的理解有以下三个方面。罗伯特·C·马丁说,“函数的首要规则是体积小。第二规则是使其尽可能地变小。”
《代码整洁之道》讲述了一系列行之有效的整洁代码操作实践。软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。
《代码整洁之道》提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。
作为编程领域的佼佼者,这些实践在《代码整洁之道》中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。
《代码整洁之道》出版于2008年,近年来,一直被列为“亚马逊最畅销的五本书”之一。本书作者被亲切地称为“Bob叔叔”,他也是《敏捷宣言》的原作者之一,资历非常丰富。本书在Goodreads上平均评分为4.4(评分人数超13 000)。可以说,这是一本程序员的必读书。
前些年阅读过《代码整洁之道》,当时对这本书的理解有限,还在写着一些垃圾代码。后来的工作中,对这本书反复阅读,有了一些体会,更是将这些收获运用到工作中来。
个人对这本书的理解有以下三个方面。
1.代码应该精简罗伯特·C·马丁说,“函数的首要规则是体积小。第二规则是使其尽可能地变小。”
这里有两条书写整洁函数的黄金定律:
· 代码应该少
· 函数应该专注做一件事,并且做精
每个系统都是由程序员设计,从一个特定领域的语言搭建起来的。函数是语言的动词,而类是名词。在任何编程语言中,函数通常是系统中的第一行,编写好的函数是写好代码的实质所在。
如果一个大的代码文件包含大量冗长而复杂的代码,则可以将该文件分为多个模块,将模块分为多个函数,再将函数分为多个子函数,直至看到代码逻辑和任务。
注释很少却清晰、表达力强的代码优于注释多的混乱、复杂的代码。 ——罗伯特·C·马丁
好的代码注释可以让维护者快速的知道这段代码的功能用途等,但是过多的、无用的、更新不及时的注释,可能会更加具有破坏力。
大部分程序员宁愿去维护代码,都不愿意同步去维护注释, 要牢记,带有一点注释并且整洁和有表现力的代码,要远远好过复杂并带有大量注释的代码。不要浪费时间去解释你写的代码,而去投入时间去使其整洁。
《代码整洁之道》关于命名写了整整一个章节,包括:
· 设置可读性高的名称——例如,int elapsedTimeInDays,而不是in days
· 使用读得出来的名称——例如,客户而不是DtaRcrd1
· 避免使用编码——不要用前缀m_表示"members",也不要使用匈牙利表示法
· 每个概念对应一个词——不要fetch retrieve get多个概念对应一个词
书中讲了错误处理中的2个建议,第1个是使用异常代替返回码,第2个是对于要捕获的异常先书写Try-Catch-Finally语句。
对于第1个书上说是为了代码书写过程中不需要每次调用都要去判断返回的各种错误码的情况,影响代码整洁会打乱代码逻辑。但有时候实际使用过程中,还是经常会有将错误码定义为返回值的情况,对调用者来讲方便判断结果,一般这种情况的错误码都会有很多种类型,甚至存在不同的错误代码可能都当做成功处理的情况,只是单单使用抛出异常的方式有时候并不是太好。
对于第2个,这是一种好的代码规范,对于需要捕获错误的函数,理论上try开头 finally结尾。
只要是代码,就难免不会出现问题,我们需要做的是,当出现问题时,能够在 try-catch语句中捕获错误。
无论你是刚入行的新人,还是经验丰富的程序员,你都会意识到工作并非你提高自己编程技能和知识的最佳途径。
你在业余时间所做的事情、你掌握自己所学知识的方法……是这些因素最终决定你在这个行业能否成功。这就是为什么对我们程序员来说,增长的心态如此重要。
作为程序员,我们学习和改进的方法特别多,比如:敏捷编程、学习在线课程、参加聚会、更多的工作经验、做项目和联系导师。
我个人最喜欢的学习方法之一是:选择一本不错的书看,试着从那些在这个行业浸淫多年的人那里学习一些东西。
希望你抽时间一定看看这本《代码整洁之道》,写出可读性高的代码,让别人轻松理解,方便修改。