变量命名
- 单词的拼接和前缀
- 遵从语言规范
- 避免缩写,变量名要突显其意义
- 不同语言的差异
方法组织
- 方法的命名,不要词不达意
- 如果不能很好地取名,方法体有问题
- 注意方法的拆分,个行其责,协同工作
- 上层 API 和底层 API 方法的差别
- 方法输入输出的异常检测,上层 API 注意稳定性,下层 API 注意性能
- 不同语言的差异
代码注释
- 注释写的很详细
- 基本不写注释,只在关键的地方加注释,比如 open API
- 代码不需要注释,读我的代码就像在读注释
- 代码不需要注释,加了注释你也不懂
异常处理
- C++,通过方法返回值或者getLastError等检测是否有异常发生,可以不用try-catch,
有时候也catch不住; - Java,一般不通过返回值来检测执行结果,大量使用try-catch,部分操作,比如io,
则必须要try-catch; - Java中,发生了异常要不要try-catch?
- try-catch可以掩盖错误的逻辑。
锁和同步
- 代码要注意线程同步
- 锁的粒度
- 避免死锁
设计模式
- 单一职责
- 开闭原则(对扩展开发,对修改关闭)
- 里氏替换原则(参数传递应使用基类)
- 依赖反转(依赖抽象,不要依赖具体)
- 最小接口原则
- 迪米特法则(高内聚,低耦合)
一个设计方法,只要能说出它的用意,并且这个用意是利大于弊的,那么这就是一个好的设计。
网友评论