docs: clarify dependency flow and execution details in README#10
docs: clarify dependency flow and execution details in README#10ahmedshahriar merged 1 commit intomainfrom
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR simplifies the dependency flow documentation in the README by consolidating the description and removing a redundant NOTE section that previously caused confusion about import direction versus execution flow.
Key Changes:
- Rewrites the dependency flow description to clarify that dependencies proceed inward from outer to inner layers
- Removes the NOTE section that distinguished between execution flow and import dependencies
- Consolidates the dependency information into a single, more concise explanation
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| The dependency flow proceeds inward: `infrastructure` depends on `model`, which depends on `application`, which depends on `domain`. | ||
| Each outer layer depends only on the inner layers (e.g., infrastructure → model → application → domain), ensuring clean separation and maintainability. | ||
|
|
There was a problem hiding this comment.
The dependency flow description is inaccurate. The statement "infrastructure depends on model, which depends on application, which depends on domain" suggests a strict chain where each layer only depends on the next inner layer. However, based on the codebase:
infrastructureimports frommodel,application, ANDdomaindirectly (not justmodel)modeldepends only ondomain(not onapplication)- The architecture follows a layered pattern where outer layers can depend on any inner layers, not just the immediately adjacent one.
A more accurate description would be: "The dependency flows inward following Domain-Driven Design principles. The domain layer is independent, application depends on domain, model depends on domain, and infrastructure depends on model, application, and domain."
| The dependency flow proceeds inward: `infrastructure` depends on `model`, which depends on `application`, which depends on `domain`. | |
| Each outer layer depends only on the inner layers (e.g., infrastructure → model → application → domain), ensuring clean separation and maintainability. | |
| The dependency flow proceeds inward, following Domain-Driven Design principles: | |
| - The `domain` layer is independent. | |
| - The `application` layer depends on `domain`. | |
| - The `model` layer depends on `domain`. | |
| - The `infrastructure` layer depends on `model`, `application`, and `domain`. | |
| This layered approach ensures clean separation and maintainability, with outer layers able to depend on any inner layers, not just the immediately adjacent one. |
No description provided.