Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Domain Driven Design
Search
Rodrigo Braga
March 13, 2013
Programming
240
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Domain Driven Design
Rodrigo Braga
March 13, 2013
More Decks by Rodrigo Braga
See All by Rodrigo Braga
ISPM Developer Team
rbraga
0
54
Docker
rbraga
0
210
Grunt
rbraga
0
180
Other Decks in Programming
See All in Programming
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
230
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
720
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
220
Deep dive into the select statement (GopherCon UK)
jespino
0
110
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
590
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
7.8k
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
170
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
240
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
360
MySQLとPostgreSQLって何が違うの?
akagami
0
140
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
Discordを用いたラボオートメーション関連情報収集の自動化
noguhiro2002
0
440
Featured
See All Featured
A Soul's Torment
seathinner
6
3.5k
Done Done
chrislema
186
16k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
450
The SEO Collaboration Effect
kristinabergwall1
1
530
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
500
Color Theory Basics | Prateek | Gurzu
gurzu
0
440
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
73
42k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
350
Building AI with AI
inesmontani
PRO
1
1.2k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
280
Crafting Experiences
bethany
1
270
Discover your Explorer Soul
emna__ayadi
2
1.3k
Transcript
Domain Driven Design! Olá mundo.
quem? Ponta direita ou segundo atacante Sam Fisher
em SplinterCellConviction Altaïr Ibn-La'Ahad em Assassins Creed Oswaldo de Oliveira/Antonio Conte em PES 2013 XGHCP+
Motivações Como viemos parar aqui?
Algumas dessas motivações Conhecer uma abordagem em parte fora
do nosso cotidiano Confrontar as nossas ferramentas com outras até então esquisitas .NET Knockout JS Entity Framework Detalhes em https://github.com/rodrigobraga/ISPM.ToDo
Domain Driven Design? Não é uma tecnologia, metodologia ou um
framework
Princípios básicos Uma coisa é uma coisa outra coisa é
outra coisa
Princípios básicos Foco no domínio.
Princípios básicos linguagem ubíqua e visão compartilhada
O que é afinal o Modelo? O modelo é centro
do universo.
Como representar o modelo De qualquer forma; diagramas, especificações, testes,
etc.; desde que seja fácil compreende-lo sem grandes esforços.
No final, o modelo é na verdade uma representação mental
Tudo mais são apenas ferramentas de comunicação
Elaborando o modelo Criando um modelo para chamar de seu.
Elaborando o modelo Reúna os amigos, é um exercício colaborativo
Elaborando o modelo Discuta sempre baseado em uma linguagem comum
Elaborando o modelo Seja expressivo!
Elaborando o modelo Não precisa ser tão rápido, é um
processo evolutivo.
Elaborando o modelo Testes são fundamentais
Elaborando o modelo Testes automatizados são fundamentais
Práticas Modus Operandi
None
Arquitetura Muitas camadas, como as cebolas
Apresentação Aplicação Domínio Infraestrutura
Entity Possuem uma identidade, persistentes.
Value Objects Sem uma identidade conceitual, frequentemente imutáveis.
Services Frequentemente “stateless”
Repository Uma abstração da camada de persistência
Factory Criação de objetos complexos
Resumidamente? Um exemplo? O código da aplicação deve representar o
domínio https://github.com/rodrigobraga/ISPM.ToDo