Loosely Coupled DDD

Post on 07-Jan-2017

339 views 1 download

transcript

Loosely Coupled DDD

A humble presentation by Juan Angosto@juanangosto

But we Get Things Done*

*©David Allen - @GTDGuy

SOLID

SOLID

CQRS

SOLID

CQRSTDD

SOLID

CQRSTDD

BDD

SOLID

CQRSTDD

BDDDDD

DDD?

Developm

ent

$ symfony new dungeons_and_dragons

$ php bin/console doctrine:database:create

$ php bin/console doctrine:generate:entity

$ php bin/console doctrine:generate:crud

$ php bin/console doctrine:schema:update --force

$ php bin/console server:run

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

UI P

ORT

REDI

S AD

APTE

RM

YSQ

L AD

APTE

R

API A

DAPT

ERW

EB A

DAPT

ER

DOMAIN

BUSINESS LOGIC

UI

PERSISTENCE

CACHE

DOMAIN

BUSINESS LOGIC

DMZ

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

UI P

ORT

DMZ

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

UI P

ORT

REDI

S AD

APTE

RM

YSQ

L AD

APTE

R

API A

DAPT

ERW

EB A

DAPT

ER DMZ

Battle

Player

Components

- Application- Domain- Infrastructure

Components

- Application (Workflow coordination)- Domain- Infrastructure

Components

- Application- Domain (Business logic)- Infrastructure

Components

- Application- Domain- Infrastructure (Communication between

layers and external elements)

DOMAIN

BUSINESS LOGIC

DMZ

Components

- Player- Application- Domain- Infrastructure

- Battle- Application- Domain- Infrastructure

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

DMZ

Components

- Player- Application- Domain- Infrastructure

- Battle- Application- Domain- Infrastructure

getAll()

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

MYS

QL

ADAP

TER

DMZ

$ php bin/console generate:bundle

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

UI P

ORT

DMZ

MYS

QL

ADAP

TER

Components

- Player- Application- Domain- Infrastructure

- Battle- Application- Domain- Infrastructure

DOMAIN

BUSINESS LOGIC

DATA

PO

RT

UI P

ORT

REDI

S AD

APTE

RM

YSQ

L AD

APTE

R

API A

DAPT

ERW

EB A

DAPT

ER DMZ

DDD in PHP google group: https://groups.google.com/forum/#!forum/dddinphp

Mathias Verraes blog: http://verraes.net/

Carlos Buenosvinos Youtube series: https://www.youtube.com/watch?v=uvKS6UCUZes&list=PLfgj7DYkKH3DjmXTOxIMs-5fcOgDg_Dd2

Vaugh Vernon blog: http://vaughnvernon.co/

rrhh@groupalia.com