Pro abstract concept:
We once tended towards "classes have features, whereas interface exhibit behavior". In this sense NamespacedEntity feels like a class, as it has name and id.
Pro interface:
It feels closely related to NamespaceProvider and INamed, and both are interfaces.
Also, we didn't really follow through with above's semantics of classes vs. interfaces.
On 2023-06-30, we decided to make NamespacedEntity an interface.
Pro abstract concept:
We once tended towards "classes have features, whereas interface exhibit behavior". In this sense
NamespacedEntityfeels like a class, as it has name and id.Pro interface:
It feels closely related to
NamespaceProviderandINamed, and both are interfaces.Also, we didn't really follow through with above's semantics of classes vs. interfaces.
On 2023-06-30, we decided to make
NamespacedEntityan interface.