Rename DimensionContent to Content #90
Labels
Technical Debt
Impacts only code quality, no or just small impact on end developers and users
To Discuss
The core team has to decide if this will be implemented
At the moment, the bundle uses a
Dimension
entity and aDimensionContent
entity. EachDimensionContent
is associated to exactly onDimension
. To manage these entities, the bundle additionally contains the following classes:DimensionCollection
(+DimensionCollectionInterface
)DimensionContentCollection
(+DimensionContentCollectionInterface
)DimensionRepository
(+DimensionRepositoryInterface
)DimensionContentRepository
(+DimensionContentRepositoryInterface
)DimensionCollectionFactory
(+DimensionCollectionFactoryInterface
)DimensionContentCollectionFactory
(+DimensionContentCollectionFactoryInterface
)In theory,
DimensionContent
is a good name because it expresses that the entity contains content in a specific dimension. But in practice, i dont think it is a good idea to includeDimension
in the name of the entity.I think the
Dimension
prefix makes it hard to distinguish theDimensionContent
entity from theDimension
entity. Especially when using composite service names (eg.DimensionContentCollection
orDimensionCollectionFactory
), it is very hard to see which entity is managed by the service. The makes the code unnecessarily hard to comprehend and impossible to understand/navigate it quickly. Also it is hard to talk in person about the concepts, because the terms are just too similar (eg.DimensionCollection
andDimensionContentCollection
).This issue is either solvable by removing the
Dimension
entity as suggested in #83, or by finding a better/simpler name for theDimensionContent
entity. The following names might be better suited:Slice
/ContentSlice
(leads toNewsSlice
instead ofNewsDimensionContent
in a project)Layer
/ContentLayer
(leads toNewsLayer
instead ofNewsDimensionContent
in a project)Partial
/ContentPartial
(leads toNewsPartial
instead ofNewsDimensionContent
in a project)The text was updated successfully, but these errors were encountered: