美文网首页
代码简洁之道

代码简洁之道

作者: mace3170 | 来源:发表于2018-01-08 10:10 被阅读43次

第一章 有意义的命名(起名是门艺术)

示例代码为伪代码,懂就好

  • 名副其实
    目的:只需要一个好名称就能知道发什么了什么事情
    示例:int d == > int daysSinceCreation;
  • 避免误导
  • 有意义的区分
    目的:提供正确信息,提供导向作者意图的线索。
    示例:a1,a2没有区别,getActiveAccount()与getActiveAccounts()没有区别
    代码示例:
change( char a1[], char a2[])
    for (..i;.......)
        a2[i] = a1[i]

但是将a1,a2换成 source与destination就会好得多。

  • 使用读的出的名称
  • 可搜索的名称
  • 避免思维映射
    目的: 明确才是王道
  • 每个概念对应一个词
    目的:每个抽象概念选一个词,并且一以贯之
    示例:一堆代码里有controller与manager还有driver,他们其实是没什么区别的,可以全用controller或者manager。

第二章 函数

  • 函数应该短小(不应该超过20行,应该只有3-4行,甚至2-3行)
  • 只做一件事情,做好这件事,只做一件事
  • 每个函数一个抽象层级
  • 使用描述性的名称,(描述性的名称要比描述性长注释好)
  • 函数参数越少越好(具体如何避免还要在实践中积累,或者如果参数很多就应该封装为类)
  • 函数应该无副作用。其实也是函数就做一件事的翻版(比如检查密码函数,checkPassword(),里面只能检查密码,不能有其他的操作,例如session.initialize(),就是不允许的)
  • 函数应该分开指令与询问,要么是做什么,要么是回答什么问题,两者不可兼得,也就是函数就做一件事的翻版。
  • 避免使用输出参数,(appendFooter(s),此时s为输出参数,可以用report.appendFooter()代替,作为对象的方法,修改所属对象的状态)
  • 使用异常替代返回错误码,而且在try catch代码块中要从代码主体抽离出来,try的是一个函数,catch里是一个函数
  • 消除重复,重复可能是软件中一切邪恶的本源
  • 每个函数都应该要有相应的测试,应该要去些单元测试

第三章 注释

  • 注释越少越好
  • 有些必要的注释可以留下(法律信息 提供信息的 对意图解释的 警示的 )
  • 别写废话注释 误导性的注释
  • 能用函数或者变量就别用注释 或者考虑重构代码
  • 为只做一件事的函数选个好名字

第四章 格式

  • 垂直格式(200-500行单个文件最佳 展示不同思路的代码间要有空行 关系密切相关的代码函数之间距离要短 )
  • 水平方向的区隔与靠近(if或while之类代码的缩进)

相关文章

  • 代码简洁之道

    第一章 有意义的命名(起名是门艺术) 示例代码为伪代码,懂就好 名副其实目的:只需要一个好名称就能知道发什么了什么...

  • 代码简洁之道

    第一章 整洁代码 第二章 有意义的命名 名副其实 问题不再于代码的简洁度,而在于代码的模糊度。即上下文在代码中未被...

  • 代码简洁之道 - 笔记

    1. 什么是整洁代码 我喜欢优雅和高效的代码。代码逻辑应当直截了当,叫缺陷难以隐藏;尽量减少依赖关系,使之便于维护...

  • 代码简洁之道-lombok

    Lombok能以简单的注解形式来简化java代码,提高开发人员的开发效率。Lombok的使用跟引用jar包一样,可...

  • JavaScript 代码简洁之道

    摘要: 可以说是《Clean Code》的JS代码示例了,值得参考。 原文:JavaScript 代码简洁之道 作...

  • JavaScript代码简洁之道

    JavaScript 代码简洁之道 测试代码质量的唯一方式:别人看你代码时说 f * k 的次数。 代码质量与其整...

  • 【翻译】代码简洁之道

    最近看到一篇文章[https://technologywolf.net/the-top-10-tips-to-wr...

  • 2016读书总结

    1. Architecture & Design 1.1《代码整洁之道》 Fundamental 行文简洁易懂,抽...

  • 代码简洁之道-->函数

    短小 这里说的短小,可不是某种短小哦!函数的第一规则是要短小,第二条规则还是要短小。因此可以看到短小真的很重要。经...

  • 代码简洁之道之easyexcel

    easyExcel是阿里巴巴开源poi插件之一,当前最新版本1.1.2-beta5,poi版本3.17,因此,集成...

网友评论

      本文标题:代码简洁之道

      本文链接:https://www.haomeiwen.com/subject/cqbvnxtx.html