Hi
The decoupled-example code is good, but it lack one important component of DIP rule (https://www.cs.utexas.edu/users/downing/papers/DIP-1996.pdf)
I mean the "Abstraction" layer which can help make "user" and "photo" compliant to abstract classes of their own and "analytics" depends on these abstract classes, and even for "analytics" can be extracted one abstract class, then for main.py (the top-level service aggregation) can only depend on these three abstract class, finally "ApplicationContainer" is for connecting the embodied containers("user", "photo", "analytics") to main.py.
The update code is better to demostrate DIP rule for developer.
Hi The decoupled-example code is good, but it lack one important component of DIP rule (https://www.cs.utexas.edu/users/downing/papers/DIP-1996.pdf) I mean the "Abstraction" layer which can help make "user" and "photo" compliant to abstract classes of their own and "analytics" depends on these abstract classes, and even for "analytics" can be extracted one abstract class, then for main.py (the top-level service aggregation) can only depend on these three abstract class, finally "ApplicationContainer" is for connecting the embodied containers("user", "photo", "analytics") to main.py. The update code is better to demostrate DIP rule for developer.
I also update docs part.
Please check. Thanks.