017 - 标签
与常规类不同,标签用于视图模板,因此语法很重要。它应该既易于编写、易于阅读,又不过于冗长,因为类似的结构会被反复使用。
类名
- 标签不使用后缀或前缀,除非它是抽象基类。
- 如果标签表示规范,请使用规范中使用的名称。
继承
允许继承,但有一些限制:
- 如果类不是抽象的,它应该是 final 的。
- 层次结构应尽可能保持线性。
不可变性
标签应该:
- 没有状态。
- 是不可变的。每个修改设置的方法都会返回一个设置已更改的克隆。
- 没有副作用。使用相同参数多次调用同一方法应该给出相同的结果。
方法
Names
- 与其他类不同,返回修改了某些属性的对象克隆的方法不使用前缀。
- 保持方法名称尽可能简短,但不要影响可读性。
- 如果标签表示规范,请使用规范中使用的名称。
布尔标志
对应于布尔属性的方法应以该属性命名,并接受一个布尔标志参数。