1. 用错误处理代码来处理预期会发生的状况,用断言来处理绝不应该发生的状况。
2. 隔栏:以防御式编程为目的而进行隔离的一种办法,就是把某些接口选定为“安全”的区域边界,对穿越安全边界的数据进行合法性的校验,并当数据非法时做出敏锐的反映。
3. 隔栏的使用让断言和错误处理有了清晰的区分,隔栏外部的程序应使用错误处理技术,在那里对数据做的任何假定都是不安全的。在隔栏内部的程序就应该使用断言技术,因为传进来的数据应该在通过隔栏时就已经被清理过了。如果隔栏内部的某个子程序检测到了错误的数据,那么应该是程序里的错误而不是数据里的错误。
4. 用预处理器来选择性的编译代码,可以让调试代码不备被译。调试的时候如果要兼顾到性能,可以生成方法存根,让这个方法快速的返回一个值。
5. 在设计一个类时,检查每一个公共程序,看是否需要一个互补的操作。
6. 类的接口应该实现一致的抽象层次。每一个类都要实现一个ADT,而且仅实现这个ADT。
7. 把不相干的信息转移到其它类中,如果你发现某一个类的一半子程序使用一半数据,而另一半子程序却使用了另一半数据,那么这其实是两个类,应该分开它们。、
8. 尽可能让接口可编程,而不是表达语义。每一个接口都有可编程部分和语义表达部分。语义表达部分说明该接口如何被使用,可以写成注释的方式,但最好是转换成编程接口的方式,比如用断言。
9. 预防在修改类时破坏类原有的抽象。在对类进行修改的过程当中,可能会增加一些额外的功能,这些功能并不十分适用于原有的接口(违反了实现一个ADT的原则)。
10. 不要添加与抽象接口不一致的公共成员,这样会破坏该类抽象的完整性。
标签:读书笔记,代码,接口,隔栏,错误处理,数据,子程序,大全 From: https://www.cnblogs.com/tqylqt/p/17470246.html