Open ekolis opened 7 months ago
This might want to wait on refactoring abilities to be ECS to avoid messing around too much with inheritance in the data model #159
On the other hand, refactoring the data classes out would tell me what need to be decoupled inheritance-wise...
That PR didn't actually create the data models, but there was some refactoring I wanted to merge.
What needs to be cleaned up?
Right now our data models are mixed up with our domain models. This eliminates duplicate code, but makes the models very brittle as any change to the domain model necessitates a change to the data model and vice versa because they are one and the same.
Also let's rename the FrEee project to FrEee.Core to clarify what it is. Maybe put the data models in a separate project called FrEee.Data referenced by FrEee.Core and that alone, to enforce separation of concerns.
How will this benefit us?
Creating separate domain models will make the code flow simpler and more flexible.
What potential drawbacks are there to making this change?
Duplication of code (the reason this wasn't done to begin with)