David García - @d4vecarter
concept in Software development is a set of rules, patterns, and agreements that allows modeling our business logic and apply semantic to it
David García - @d4vecarter
allows:
David García - @d4vecarter
https://www.opsmx.com/blog/reducing-cost-complexity-of-testing-ml-based-continuous-verification/
{
Learning
wall
David García - @d4vecarter
Keep business logic complexity stable in time despite the number of features being added to our application
David García - @d4vecarter
Dependency layers in the Hexagonal Architecture model
David García - @d4vecarter
https://medium.com/@fabio.schettino.01/implementando-ddd-y-arquitectura-hexagonal-en-php-con-laravel-bc2d737b8460
Uni-directional dependencies representation between layers
/ User interface
David García - @d4vecarter
In our Domain, every business logic represents an abstraction and becomes a type of object with a function
David García - @d4vecarter
An Entity usually represents a unique Domain Object with an ID.
For instance: ad, course, savedSearch, user, etc...
David García - @d4vecarter
A Domain Object with properties and attributes related between them. Featuring:
For instance: a filters object, a token, a response object...
David García - @d4vecarter
Responsible for data fetching and persistence
For instance: CRUD requests to endpoints or reads/write from/to cookies
David García - @d4vecarter
Gets the Repository response as an input and transforms data, makes calculations, and builds other domain objects like Entities or VOs as its output.
David García - @d4vecarter
The closest layer to the UI is responsible for abstracting the User needs into a requirement exposing a decoupled interface
For instance: The user requests the list of purchased courses based on its user-id
David García - @d4vecarter