Mos*_*ish 1 oop coding-style interface
我想了解一下 Bob 叔叔在Clean Code书中关于接口命名的内容:
这些有时是编码的特例。例如,假设您正在构建一个用于创建形状的抽象工厂。这个工厂将是一个接口,并由一个具体的类实现。你应该给它们起什么名字?IShapeFactory 和 ShapeFactory?我更喜欢让界面保持朴素。前面的 I,在今天的遗留文件中很常见,充其量是一种干扰,最坏的情况是信息过多。我不希望我的用户知道我正在给他们一个界面。我只是想让他们知道这是一个 ShapeFactory。因此,如果我必须对接口或实现进行编码,我会选择实现。称其为 ShapeFactoryImp,甚至是可怕的 CShapeFactory,都比对接口进行编码更可取。
他不以“I”开头的界面是什么想法,为什么他不希望用户知道他正在处理一个界面?
其有效性当然有待商榷,但(像往常一样)我同意鲍勃叔叔的观点。
接口的客户端不需要知道他被赋予了一个接口而不是一个具体的类,并且客户端代码应该最常使用接口名称,因此接口名称最好清楚地传达业务含义。如果有必要对其中一个进行编码,最好不要对您想要并期望人们使用的编码进行编码。
“I”前缀没有提供任何有用的信息,并且让您将其作为接口而不是抽象的父类保留在区分两者的语言中。
| 归档时间: |
|
| 查看次数: |
551 次 |
| 最近记录: |