Product Entities
During discussions about creating a universal base for building customer apps, thoughts were voiced about the impossibility of creating such universal solutions because all processes are unique. This is not entirely true, there is still something in common, but you should always remember that you will need to customize, and it is important that during customization the functionality that has already been created for the basic implementation is not lost.
The easiest way to achieve universality is to allow the use of non-typed key-value objects. Flexibility is maximum, but there are negative consequences. In this case, we lose all the charm of the typed approach.
There are two different ways to create a product model:
- DynamicProduct
- Product as a fully defined entity.
or you can use both.
It makes sense to create special entities for products with different types to improve their manipulation in your use case interactors code, but for processes like import, you can use dynamic objects.