美文网首页读书笔记
《代码整洁之道》

《代码整洁之道》

作者: 芒格的书呆子粉丝 | 来源:发表于2019-06-21 09:13 被阅读20次

    命名

    • 名副其实,避免误导
    • 有意义的区分,
    • 长名称胜过短名称,做到可搜索

    函数

    • 函数应该短小
    • 函数只做一件事,不要太复杂
    • 函数中的语句应该在同一抽象层级上,不要混杂不同抽象层级
    • 函数名要具有描述性,能对应函数功能,且能区分
    • 参数应该尽量少,如果参数太多,应该把几个参数抽象成对象
    • 使用异常替代返回错误码
    • 抽离try-catch语句,处理错误的函数不该做其他事
    • 减少重复代码

    注释

    • 注释不能美化糟糕的代码
    • 用代码阐述你在干什么
    • 好的注释
      • 提供信息的注释
      • 警示
      • TODO注释
      • Javadoc
    • 坏的注释
      • 喃喃自语
      • 多余的注释
      • 误导性注释
      • 可怕的废话
      • 注释掉的代码
      • 函数头

    格式

    • 垂直格式,留有适当空格
    • 水平格式,要对齐代码

    对象和数据结构

    • 过程式代码便于在不改动既有数据结构的前提下添加新函数,使用面向对象代码便于在不改动既有函数的前提下添加新类
    • 德墨忒尔律
    • 火车失事,连串调用通产被认为是肮脏的风格
    • DTO(最为精炼的数据结构)

    错误处理

    • 使用异常而非返回码
    • 别返回null值
    • 别传递null值

    边界

    • 学习性测试

    单元测试

    • TDD三定律

    • 保持测试整洁,测试代码和生产代码一样重要

    • 每个测试一个断言,每个测试一个概念

    • F.I.R.S.T原则(Fast,Independent,Repeatable,Self-Validating,Timely)

    • 类应该从一组变量开始,如果有公共静态变量,应该先出现,然后是私有静态变量,以及私有实体变量,很少会有公共变量

    • 类应该短小,遵守单一职责原则(SRP)

    • 系统应该由许多短小的类而不是少量巨大的类组成

    • 保持内聚性就会得到许多短小的类,,内聚性高,意味着方法和变量是相互依赖的,互相结合成一个逻辑整体

    • 对扩展开发,对修改封闭(开放-闭合原则OCP)

    • 类应该依赖于抽象而不是具体细节,通过部件之间的解耦来隔离修改(依赖倒置原则DIP)

    系统

    • 将系统的构造和使用分开
      • 分解main
      • 工厂
      • 依赖注入
    • 面向切面编程AOP
    • Java代理

    迭进

    • 运行所有测试(紧耦合的代码难以编写测试)
    • 重构(测试消除了清理代码时害怕破坏原有代码的恐惧)
    • 不可重复(小规模复用,模板方法模式)
    • 增强代码的表达力
    • 尽量少的类和方法

    相关文章

      网友评论

        本文标题:《代码整洁之道》

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