写点什么

面向对象编程九诫

用户头像
风翱
关注
发布于: 2021 年 04 月 16 日

面向对象编程九诫,也许你没有听说过,如果有了解过,就当再复习一遍。

接下来一起看看这九诫指的是什么?

  1. 方法只使用一级缩进。

  2. 拒绝使用 else 关键字。

  3. 封装所有的原生类型和字符串。

  4. 一行代码只有一个“.”运算符。

  5. 不要使用缩写。

  6. 保持实体对象简单清晰。

  7. 任何类中的实例变量都不要超过两个。

  8. 使用一流的集合。

  9. 不使用任何 Getter/Setter/Property。 


规则 1:方法只使用一级缩进

我们常见的原则是方法的行数控制在 5 行之内(原先更多听到的实践是控制在一屏,这个刷新了我的认识),当然要达到这一原则的要求确实不易。但是你可以尝试让每个方法只做一件事情:只包含一个控制结构或代码块。


规则 2:拒绝 else 关键字

条件判断结构通常是重复代码的来源。在现有的判断条件上加上新的分支非常容易,层层嵌套,眩晕无比,拒绝 else,可以让代码更清晰一些。


规则 3:封装所有的原生类型和字符串

小对象可以提高程序的可维护性,它可以提供给编译器和其他程序员更多的信息:这个值是什么,为什么使用它。


规则 4:一行代码只有一个“.”运算符

迪米特法则(The Law of Demeter,"只和身边的朋友交流")。


规则 5:不要使用缩写

缩写会令人感到迷惑,也容易出现一些问题。

一般都是名字太长,才会使用缩写。尽量做到所有实体对象的名称都只能包含一到两个单词。


规则 6:保持实体对象简单清晰

要做到这一点,要求有点苛刻,每个类的长度不能超过 50 行,每个包所包含的文件不超过 10 个。小于 50 行代码的类:一屏幕就可以现实完整,可以方便、快速地熟悉这个类。


规则 7:任何类中的实例变量都不要超过两个

一种类只负责维护一个实例变量的状态;另一种类只负责协调两个独立的变量。


规则 8:使用一流的集合

任何包含集合的类都不能再包含其他的成员变量。


规则 9:不使用任何 Getter/Setter/Property

讲述而不要询问(“Tell,don't ask”)


发布于: 2021 年 04 月 16 日阅读数: 11
用户头像

风翱

关注

还未添加个人签名 2017.11.24 加入

勇于尝试,持续成长

评论

发布
暂无评论
面向对象编程九诫