命名一个抽象 class 扩展另一个抽象 class

Naming an abstract class that extends another abstract class

对于扩展另一个摘要 class 的摘要 class 来说,什么是好的命名约定?

我有一个名为 Builder 的摘要 class,我应该如何命名扩展它的摘要 class?我应该命名第一个 class AbstractBuilder 和子类 AbstractBuilderImpl 吗?

谢谢!

我想说的是,大多数时候更多的是使用逻辑而不是约定——想想 Builder 是什么,AbstractBuilder 是什么,并相应地命名。需要声明AbstractBuilder是抽象的,有什么实际影响吗?更合适的名称可能基于其用途和添加的功能。

假设您有抽象的 class Employee 并且扩展它是抽象的 classes HourlyEmployee 和 SalariedEmployee - 这很有意义吧?与 AbstractEmployee1/2 相比,它可以让您更好地了解目的。

关于实现本身 - 是的,我看到公司使用 xxxImpl - 所以我猜它是可用的,但同样 - 它取决于 class 本身及其带来的东西 - 可能有一个更好的名字那里你可以想出也可能不会,但 xxxImpl 也可以提供同样的服务。

您可以使用另一种方法,而不是为每个 class 使用通用名称,例如,像 Vehicle 这样的主要 class(构建器)然后 'LandVehicle' 或 'FlyingVehicle' 对于 (AbstractBuilder) 然后 'Car' 或 'PoweredParagliding' 这棵树的最后 class (AbstractBuilderImpl)