- ใฆใผใถใจใฎ็ธไบไฝ็จใฎๅข็ใจใชใๅฑค
- ใขใใชใฑใผใทใงใณๅฑคใฎไธ้จใชใฎใๅฅๅใฎใฌใคใคใชใฎใ่ซธ่ชฌใใ
- ใฆใผใถใผใซๆ ๅ ฑใๆ็คบใใฆใใฆใผใถใผใฎๆไฝใใณใใณใใฎ่งฃ้ใๆ ใใฌใคใคใผใ DDDใงใฏใใใฎใฌใคใคใผใซใใธใในใญใธใใฏใ็ตใ่พผใใใจใ็ฎ่ใ่พผใใฆใๅฉๅฃใชUIใใจใใใขใณใใใฟใผใณใจใใฆใใใ้ฟใใในใใใฟใผใณใงใใใ
- ใใกใคใณใชใใธใงใฏใใๆไฝใใใใจใงใใฝใใใฆใงใขใๆใใในใไปไบใๅฎ็พใใๅฑค
- ใขใใชใฑใผใทใงใณใ่กใใใจใซใชใฃใฆใใไปไบ๏ผใฆใผในใฑใผใน๏ผใๅฎ็พฉใใใใฎไปไบใใใกใคใณใฌใคใคใผใฎใชใใธใงใฏใใ่งฃๆฑบใใใใใซๆๆฎ๏ผorchestrate๏ผใใใฌใคใคใผใใใฎใฌใคใคใผใใใธใในใญใธใใฏใฏๅซใพใใๅฎ้ใฎๅฆ็ใฏใใกใคใณใฌใคใคใผใซๅง่ญฒใใฆ่ชฟๆดๅฝนใๆ ใใ
- ใใธใในไธใฎๆฆๅฟตใ่กจ็พใใๅฑค
- ใใธใในใฎๆฆๅฟตใจใใใธใในใซใผใซใใใณใใธใในใ็ฝฎใใใ็ถๆณใซ้ขใใๆ ๅ ฑใ่กจ็พใใใฌใคใคใผใใใฎใฌใคใคใผใใขใใชใฑใผใทใงใณใฎๆ ธๅฟใจใชใใฌใคใคใผใงใใขใใซใๆฏใฅใๅ ดๆใงใใใไฝใใๆ่ก็ใช้ขๅฟไบใซใคใใฆใฎๅฎ่ฃ ใฏใคใณใใฉในใใฉใฏใใฃใฌใคใคใผใซๅง่ญฒใใใ
-
ไธใฎ3ๅฑคใๆฏใใๆ่ก็ใชๅบ็คใจใชใๅฑค
-
ๆฐธ็ถๅใ ใกใใปใผใธใณใฐใใญใฎใณใฐ็ญ
-
ใกใใปใผใธใณใฐใซใฏใ้ไฟกใใญใใณใซใซใใฃใฆ็จฎ้กใใใใ๏ผHTTPใUDPใAMQPใFTPใชใฉใ๏ผ
-
ไธ่ฟฐใฎใฌใคใคใผใๆฏใใไธ่ฌ็ใชๆ่ก็ๆฉ่ฝใๆไพใใใฌใคใคใผใใใผใฟใฎๆฐธ็ถๅใซ้ขใใๆ่ก็ใชๆฉ่ฝ๏ผใใฉใณใถใฏใทใงใณ็ฎก็ใO/Rใใใใผ๏ผใใใฆใผใถใผใคใณใฟใผใใงใคในใฎใฌใณใใชใณใฐๆฉ่ฝใชใฉใ่ฉฒๅฝใใใ
-
ใฏใฉในใใใกใคใณๅฑคใซ็ฝฎใในใใใใคใณใใฉในใใฉใฏใใฃๅฑคใซ็ฝฎใในใใใๅคๆญใใๅบๆบใฏใใใกใคใณๅฑคใฎใฏใฉในใซไพๅญใใๅ ดๅใฏใใกใคใณๅฑคใธใใใกใคใณๅฑคใซไพๅญใใชใๅ ดๅใฏใใคใณใใฉในใใฉใฏใใฃๅฑคใซ็ฝฎใในใ๏ผ
https://www.ogis-ri.co.jp/otc/hiroba/technical/DDDEssence/chap2.html http://www.shigemk2.com/entry/reactive_shinjuku_domain_event http://enterprisegeeks.hatenablog.com/entry/2016/07/25/081127
-
ใชใใธใงใฏใใฎไธญใซใฏใใขใคใใณใใฃใใฃใใใคใใฎ๏ผใจใณใใฃใใฃ๏ผใๅญๅจใใใใจใณใใฃใใฃใฏใใขใคใใณใใฃใใฃใๅใใชใใฐใๅฑๆงใ็ฐใชใฃใฆใใฆใๅไธใฎใใฎใจใใฆๆฑใใชใใใฐใชใใชใใ้ใซใๅฑๆงใใพใฃใใๅใใงใใใขใคใใณใใฃใใฃใ้ใใฐๅฝ็ถๅฅใจใณใใฃใใฃใจใชใใใจใณใใฃใใฃใฏใใกใคใณใขใใซใฎไธปๅฝนใงใใใใใฎใฉใคใใตใคใฏใซใ่ใใใใจใ้่ฆใซใชใใใใกใคใณใขใใซใฎไธญใซใใใฆใใจใณใใฃใใฃใฎๅไธๆงใใฉใใใฃใฆๅคๆญใใใใๅฎ็พฉใใชใใใฐใชใใชใใ
-
ใใกใคใณใฌใคใคใผใซ็ปๅ ดใใๆงๆ่ฆ็ด ใใขใใชใฑใผใทใงใณไธใงๅไธๆงใฎ่ญๅฅใๅฟ ่ฆใชใชใใธใงใฏใใใคใพใใใขใใชใฑใผใทใงใณไธใงใชใใธใงใฏใใฎไธๆๆงใๆ่ญใใฆๆฑใๅฟ ่ฆใใใใชใใธใงใฏใใงใใใไปฅไธใฎใใใชใจใณใใฃใใฃใฏๆฅญๅใ้่กใใใใใงไธๆใซ็นๅฎใใๅฟ ่ฆใใใใ
็ฉใใตใผใใน๏ผๅๅใๅจๅบซ๏ผ ไบบใ็ต็น๏ผ้กงๅฎข๏ผ ๅ ดๆ๏ผ้ ้ๅ ใๅๅบซใไฟ็ฎกๅ ดๆ๏ผ ๅๅผ๏ผๆณจๆใๅจๅบซๅผๅฝ๏ผ ไปฎใซๅๅงๅๅๅฅไบบใฎ่คๆฐใฎใ้กงๅฎขใใใใใจใใใใใใฎ้กงๅฎข้ใฏๅฅใ ใฎใคใณในใฟใณในใจใใฆๆฑใใใในใใงใๅ็งฐใไธ็ทใ ใใใจใใฃใฆใใฎๅญๅจใไธๆฌใใซใใฆใใพใใจใๆณจๆใ้ ้ใ็ฎ่ถ่ฆ่ถใซใชใฃใฆใใพใใ้ใซใใชใใธใงใฏใใใจใฎๅไธๆงใๆ่ญใใชใๅใชใๆฐ้ใ้้กใจใใฃใๅๅคๆงใง่ชใใใๆฆๅฟตใฏใใใฎๅพใซ็ดนไปใใใใชใฅใผใชใใธใงใฏใใจใชใใ
-
ใจใณใใฃใใฃใจใฏ้ใซใใใจใใฐใ่ฒใใใ้ใใฎใใใซใใใฎๅฑๆงใ ใใ้่ฆใงใใขใคใใณใใฃใใฃใ่ใใใใจใซๆๅณใฎใชใใชใใธใงใฏใใใใใใใใใใชใใธใงใฏใใฏใๅคใชใใธใงใฏใใซๅ้กใใใๅคใชใใธใงใฏใใจใฏใไบ็ฉใฎๆง่ณชใ่กจ็พใใใใฎใงใใใๅคใชใใธใงใฏใใฏ็ถๆ ใๅคๆดใงใใชใใใฎ๏ผimmutable๏ผใจใใฆๆฑใใใจใณใใฃใใฃใฎ่ค้ใใซๅฐๅฟตใงใใใใใซใๅคใชใใธใงใฏใใฏใทใณใใซใช่จญ่จใซไฟใคใใใซใใใ๏ผใใฎๅคใชใใธใงใฏใใฏใPofEAAใฎValue Objectใใฟใผใณใจๅใใใฎใ่กจใใฆใใ๏ผ
-
ใใกใคใณใฌใคใคใผใซ็ปๅ ดใใๆงๆ่ฆ็ด ใใใกใคใณไธใซ็ปๅ ดใใๅคใใฎใใฎใใชใใธใงใฏใๅใใๅไธๆงใๆใใชใๅฐๅใฎใชใใธใงใฏใใไปฅไธใฎใใใชใชใใธใงใฏใใฏใใใชใใใฃใๅใๆจๆบๅ๏ผStringๅใDateๅ๏ผใงๅฎ็พฉใใใฎใไธ่ฌ็ใงใใใ
ๆฐ้ ้้ก ใณใผใ ๆฅไป ๅบๅ ใใใใใๆณจๆ็ชๅทใใฏใฉในใใๆณจๆๆฐ้ใใฏใฉในใใ้ ้ไบๅฎๆฅใใฏใฉในใใๅๅใณใผใใใฏใฉในใจใใฃใๆฅญๅไธใฎๆๅณใๅฎฟใใใใฏใฉในใจใใฆๆ็คบ็ใซๅฎ็พฉใใใใจใงใใใฎๅค่ช่บซใใใค็ฅ่ญใใใชใฅใผใชใใธใงใฏใใซๅ็ธฎใใใใใจใใงใใใฝใใใฆใงใขไธใฎ่กจ็พใจใใฆใใใๆ็ขบใซใงใใใ
-
ใใกใคใณใงๆฑใๆฆๅฟตใฎไธญใซใฏใ1ใคใฎๆฉ่ฝใๅฆ็ใๅไฝใงๅญๅจใใฆใใฆใใใฎ๏ผใชใใธใงใฏใ๏ผใจใใฆๆฑใใฎใไธ่ช็ถใชใใฎใใใใใใใใใใฎใฏใใตใผใในใจใใๅฝขใงใฆใใญใฟใน่จ่ชใซ็ตใฟ่พผใใใตใผใในใฏๅบๆฌ็ใซ็ถๆ ใใใใชใ๏ผstateless๏ผใ๏ผPofEAAใฎService Layerใใฟใผใณใจใฏ็ฐใชใๆฆๅฟตใชใฎใงๆณจๆใService LayerใใฟใผใณใฏDDDใฎใขใใชใฑใผใทใงใณๅฑคใซ็ธๅฝใใใใฎใ่จใฃใฆใใใใDDDใฎใตใผใในใฏใใกใคใณใขใใซใฎไธญใซใใใตใผใใน็ใชใใฎใๆใใฆใใใ้ฆ่จณใฏใชใใใFowlerๆฐใฎ่จไบใEvansใฎๅ้กใใๅ่ใซใชใ๏ผ
-
ๆๅใซใใใตใผใในใจใฏใใขใใจใใฆๆฑใใจไธ่ช็ถใชใใฎใใตใผใในใซๅ้กใใใใจ่งฆใใพใใใใใจใณใใฃใใฃใใใชใฅใผใชใใธใงใฏใใจใใใขใใซๅ้กใงใใชใใใใชๆฏใ่ใใๅใๅบใๅ ดๆใจ่ใใใจใใใงใใใใใคใพใใใใใใๆฏใ่ใใๅ้กใใๆใซใไพๅค็ใๆถๆฅต็ใซไฝฟใใขใใซใจ่ใใฆใใ ใใใ
-
ใใกใคใณใฌใคใคใผใซ็ปๅ ดใใๆงๆ่ฆ็ด ใ ใจใณใใฃใใฃ๏ผ็ฉใไบบใๅ ดๆใๅๅผใชใฉ๏ผใซใใใใชใฅใผใชใใธใงใฏใ๏ผๅคใใฎใใฎ๏ผใซใๅฑใใชใใใใกใคใณไธใฎใใธใในใซใผใซใใขใฏใทใงใณใๆไพใใใตใผใในใ ใใใใฏใใจใณใใฃใใฃใใใชใฅใผใชใใธใงใฏใใฎใใใซๅฎไฝใฎใขใใจใใฆๆใใใฎใฏไธ่ช็ถใงใใใธใในใซใผใซใซใใจใฅใใ่จ็ฎใๅคๅฎใจใใฃใใขใฏใทใงใณใๆ ใใตใผใในใจใใใฎใ้ฉๅใงใใใ
ไพใใฐไปๅใฎใใกใคใณใขใใซใงใๅๅใฎไพกๆ ผใ็ฎๅฎใใใใจใใๅ ดๅใๆจๆบไพกๆ ผใ ใใชใใฐใจใณใใฃใใฃใใ็ฐกๅใซๅๅพใงใใใใใพใจใ่ฒทใใซใใๅฒๅผใๆ้้ๅฎใงใฎๅฒๅผใพใง่ๆ ฎใใใใจใใใจ็ฐกๅใซใฏๅๅพใงใใชใใ ๅฎ้ใฎ่ฒฉๅฃฒไพกๆ ผใๆฑบๅฎใใใใใซใฏใ่ซธใ ใฎใใธใในใซใผใซใ่คๅ็ใซๅ ๅณใใๅฟ ่ฆใใใใใไพกๆ ผใฎ็ฎๅฎๆนๆณใใขใใจใใฆๅฎ็พฉใใใฎใฏไธ่ช็ถใชใใใใใกใคใณใตใผใในใจใใฆๅฎ็พฉใใใ ใใฎ็ฎๅฎๆนๆณใ่ณใใจใใใซๆฃๅจใใใจใใณใผใ้่คใใกใณใใใณในๆงไฝไธใไพกๆ ผๅทฎ็ฐ็บ็ใชใฉใฎใใฐใฎๆธฉๅบใซใชใใใใไพกๆ ผๆฑบๅฎใซ้ขใใ็ฅ่ญใฏใใใฎใใกใคใณใตใผใในใซๅ็ธฎใใใฆๅคใซๆตๅบใใใฆใฏใใใชใใ
ใใกใคใณใตใผใในใฎๆไพ็ฒๅบฆใฏใใขใใชใฑใผใทใงใณใตใผใในใฎๆงใซใใๅไฝใงใฆใผในใฑใผในใๆบใใใปใฉๅคง็ฒใงใฏใชใใใใฎใใกใคใณๅบๆใฎ็ฅ่ญ็ฏๅฒใซ็นๅใใใตใผใในใจใชใใใพใใใใกใคใณใตใผใในใฏใ่จ็ฎใๅคๅฎใ่กใไธใง่คๅ็ใช็ฅ่ญใๅฟ ่ฆใจใชใใใจใๅคใใๅคงๆตใฎๅ ดๅใฏ่คๆฐใฎใจใณใใฃใใฃใใใชใฅใผใชใใธใงใฏใใๆใญใไธญ็ฒใฎใตใผใในใๆไพใใใใจใซใชใใ ้ใซ่จใใจใใจใณใใฃใใฃๅไฝใใใชใฅใผใชใใธใงใฏใๅไฝใฎ็ฅ่ญใงๆไพใงใใใกใฝใใใใใใฐใใใใฏใใกใคใณใตใผใในใงใฏใชใใใจใณใใฃใใฃใใใชใฅใผใชใใธใงใฏใใซ่จ่ฟฐใใใฐใใใ
- ใขใใชใฑใผใทใงใณใฌใคใคใผใซ็ปๅ ดใใๆงๆ่ฆ็ด ใใใกใคใณใฌใคใคใผใฎๅคงๅฐๆงใ ใช็ฅ่ญใๆๆฎ๏ผorchestrate๏ผใใฆใใฆใผใถใผใซๅฏพใใฆๆๅณใฎใใๅไฝใฎๆฉ่ฝใๆไพใใใตใผใในใใฆใผในใฑใผในใซ็ปๅ ดใใฆใใใใใชๆฉ่ฝใฏใใขใใชใฑใผใทใงใณใตใผใในใง่กจ็พใใใใใใๅฎ้ใฎใใธใในใญใธใใฏใฎ่จ่ฟฐใฏใใกใคใณใฌใคใคใผใฎ้จๅใซๅง่ญฒใใฆใใขใใชใฑใผใทใงใณใตใผใใน่ชไฝใฏใใกใคใณใฌใคใคใผใฎ้จๅใฎ่ชฟๆดใซๅพนใใใ
- ใขใธใฅใผใซใฎไป็ตใฟ๏ผJavaใฎใใใฑใผใธใ.NETใฎๅๅ็ฉบ้ใชใฉ๏ผใฏใใใญใฐใฉใใณใฐใซใใใฆใฏ่ชฐใใไฝฟใฃใฆใใใไบบ้ใไธๅบฆใซ่ใใใใ็ฉไบใฎ้ใซใฏ้็ใใใใฎใงใๆฆๅฟตใซใคใใฆใๅใใใใซใขใธใฅใผใซๅๅฒใๅฟ ่ฆใงใใใใใญใฐใฉใใณใฐใฎๅ ดๅใจๅใใใใใกใคใณใขใใซใฎใขใธใฅใผใซๅๅฒใซใใใฆใ้ซๅ้๏ผไฝ็ตๅใ้่ฆใช็ฎๅฎใซใชใใ้ข้ฃใๅใๆฆๅฟตๅๅฃซใฏใฒใจใคใซใพใจใ๏ผ้ซๅ้๏ผใใใคไธๅบฆใซ่ใใชใใใฐใใใชใ็ฏๅฒใฏๆๅฐ้ใซใใ๏ผไฝ็ตๅ๏ผใใขใธใฅใผใซใฎๅๅใใใฆใใญใฟใน่จ่ชใฎ้่ฆใชไธ่ฆ็ด ใจใใฆๆฑใใใขใธใฅใผใซใใณใผใใจๅๆงใใชใใกใฏใฟใชใณใฐใซใใฃใฆใขใธใฃใคใซใซ้ฒๅใใใฆใใใชใใใฐใชใใชใใ
-
ใชใใธใงใฏใใฎใฉใคใใตใคใฏใซใ่จญ่จใใใซใฏใใพใใฉใคใใตใคใฏใซใฎๅไฝใจใชใใชใใธใงใฏใใฎใพใจใพใใ่ใใชใใใฐใชใใชใใใใจใใฐใๆณจๆใใจใๆณจๆๆ็ดฐใใฎใใใซใ้ข้ฃใใใชใใธใงใฏใใฎใฐใซใผใใฏ้็ดใจใใฆๆฑใใ้็ดใๅไฝใจใใฆใขใใซใฎไปใฎ่ฆ็ด ใจใฎๅข็ใๆ็ขบใซๅใใใ้็ดใฎไธญใใ1ใคใจใณใใฃใใฃใ้ธใใงใใใใ้็ดใฎใซใผใ๏ผroot๏ผใจใใ๏ผๅ ใปใฉใฎไพใงใฏใใๆณจๆใใใซใผใใซใชใ๏ผใ1ๅใใใฎๅฆ็ใงๅ็ งใ็ ดๆฃใใใใใใช็นๅฅใชๅ ดๅใ้คใใฆใๅค้จใใๅ็ งใงใใใฎใฏใซใผใใ ใใงใไธญใฎใชใใธใงใฏใใซๅฏพใใๅฆ็ใฏใในใฆใซใผใใไธญ็ถใใใใใใใใใจใงใ้็ดๅ ใฎใขใใซใฎไธ่ฒซๆงใ็ถญๆใใใใจใใงใใใ
-
ใใกใคใณใฌใคใคใผใซ็ปๅ ดใใๆงๆ่ฆ็ด ใ ๅฏๆฅใซ้ข้ฃใฎใใใจใณใใฃใใฃใใใชใฅใผใชใใธใงใฏใๅๅฃซใ้็ดใใใชใใธใงใฏใใฎใฏใฉในใฟใ
ไพใใฐไปๅใฎใใกใคใณใขใใซใซใใใใๆณจๆใใใใ-ใๆณจๆๆ็ดฐใใฎ้ข้ฃใปใใใฏใใขใใชใฑใผใทใงใณใฎไธญใงใใใใๅใ ใงๆฑใใใใใใใๆณจๆใใจใใ1ใปใใใงๆฑใใใใใจใๅคใใ ใใใๆณจๆๅๅใฎๆ็ดฐใๅใใใชใๆณจๆใใใใใๆณจๆ็ชๅทใๅใใใชใๆณจๆๆ็ดฐใ ใใใฃใฆใๅฝนใซ็ซใใชใใฎใงใ็ตๅฑใฏ้ฝๅบฆ้ฝๅบฆ ใไบใใฎ้ข้ฃใ่พฟใ็พฝ็ฎใซใชใใ
ใใใใฃใ้ข้ฃใใซใใปใซๅใใฆใขใฏใปในใๅ็ดๅใใๅฝนๅฒใๆ ใใฎใใขใฐใชใฒใผใใงใใใ
ใขใฐใชใฒใผใใใใๅ ดๅใใขใฐใชใฒใผใๅ ใฎ1ใคใฎใจใณใใฃใใฃใใขใฏใปในใใคใณใ๏ผใขใฐใชใฒใผใใซใผใใไปๅใ ใจใๆณจๆใใใใใ่ช็ถ๏ผใจใใฆๅฎใใฆๅค้จใซๅ ฌ้ใใใขใฐใชใฒใผใๅ ใฎๅ ฅใ็ตใใ ้ข้ฃใในใ้ ่ฝใใใใจใงใๅค้จใใใฏใขใฐใชใฒใผใใซใผใใ้ใใฆใขใฐใชใฒใผใๅ ใฎๆ ๅ ฑใซ้้็ใซใขใฏใปในๅบๆฅใใใใซใชใใ
- ใชใใธใงใฏใใ้็ดใฎ็ๆๅฆ็ใฏใใ่ชไฝ่ค้ใซใชใใใใใใใใกใฏใใชใๅฐๅ ฅใใฆ็ๆๅฆ็ใใซใใปใซๅ*2ใใใใชใใธใงใฏใใฎ็ๆใใฎใใฎใใใกใคใณใขใใซไธใง้่ฆใชๆๅณใใใคใใจใฏ๏ผใปใจใใฉ๏ผใชใใใใใใกใฏใใชใฏใใกใคใณใขใใซใฎไธ้จใงใฏใชใใใใใพใงใใใกใคใณใฎ่จญ่จไธๅฟ ่ฆใชไธ่ฆ็ด ใใจใใไฝ็ฝฎไปใใซใชใใ*2 ๆฌๆฅใใซใใปใซๅใใจใฏๅใซๅฑๆงใๆไฝใ1ใคใซใพใจใใใใจใ่กจใๆฆๅฟตใงใๅฎ่ฃ ใฎ่ฉณ็ดฐใๅค้จใใ้ ใๆฆๅฟตใงใใใๆ ๅ ฑ้ ่ฝใใจใฏ็ฐใชใใพใใใใใEvansใฏใใฎ2ใคใๆททๅใใฆไฝฟใฃใฆใใฆใใซใใปใซๅใจใใ่จ่ใๆ ๅ ฑ้ ่ฝใฎๆๅณใงใไฝฟใฃใฆใใใใจใซๆณจๆใใฆใใ ใใใ
-
ใใกใฏใใชใซใใ็ๆใใใใใกใคใณใชใใธใงใฏใใฏใๅฝน็ฎใ็ตใใฆ็ ดๆฃใใใใพใงใฏ็ๅญใใใ็ๅญๆ้ใฎ้ไธญใงใใปใจใใฉใฎๅ ดๅใฏDBใชใฉใซใใฃใใๆฐธ็ถๅใใใใDBใธใฎๆฐธ็ถๅใๅใๅใใๅฆ็ใฎ่ค้ใใซใใฃใฆใใใกใคใณใขใใซใๆฑๆใใใชใใใใซใใใใใใชใใธใใชใจใใๆฐธ็ถๅ๏ผๅใๅใใๅฐ็จใชใใธใงใฏใใใใกใคใณ่จญ่จใซๅฐๅ ฅใใ๏ผใใกใฏใใชๅๆงใใใกใคใณใขใใซใฎไธ้จใงใฏใชใ๏ผใใชใใธใใชใไฝฟใๅดใใใฏใใใกใคใณใขใใซใใใใใใกใขใชไธใซใณใฌใฏใทใงใณใจใใฆๅญๅจใใฆใใใใฎใใใซ่ฆใใใใชใใธใใชใฏใใขใใซไธญใงใฐใญใผใใซใชใขใฏใปในใๅฟ ่ฆใชใจใณใใฃใใฃ๏ผ้็ดใฎๅ ดๅใฏใใฎใซใผใ๏ผๆฏใซใ1ใค็จๆใใใใ
-
ใใกใคใณใฌใคใคใผใใใณใคใณใใฉในใใฉใฏใใฃใฌใคใคใผใซ็ปๅ ดใใๆงๆ่ฆ็ด ใใจใณใใฃใใฃใใขใฐใชใฒใผใใฎไฟ็ฎก๏ผใใผใฟในใใขใธใฎๆฐธ็ถๅใใญใฃใใทใฅใธใฎ่ฟฝๅ ใชใฉ๏ผใจใไฟ็ฎกๆธใฟใฎใจใณใใฃใใฃใใขใฐใชใฒใผใใฎๅใๅบใใๆ ใๅฝนๅฒใๆใใใใใใฎๅใฎใจใใใใพใใซใชใใธใงใฏใใฎ่ฒฏ่ตๅบซใงใใใ
ๅฐใใชใใธใงใฏใใฎไฟ็ฎกใซ้ขใใๆ่ก่ฆ็ด ใซใคใใฆใฏใRDBใๅฉ็จใใๅ ดๅใใใใฐใNoSQLใๅฉ็จใใๅ ดๅใใใใใใใใใฎๆ่ก่ฆ็ด ใซ้ขใใใณใผใใซใคใใฆใฏใคใณใใฉในใใฉใฏใใฃใฌใคใคใผใงๅฎ่ฃ ๏ผไพใใฐใSQLใฎใฏใจใชใณใผใใชใฉ๏ผใใฆใใใกใคใณใฌใคใคใผใงใฏๆ่ก่ฆ็ด ใๆ่ญใใใใจใชใใใใกใคใณใฎ่จ่ใงใชใใธใงใฏใใฎไฟ็ฎกใปๅใๅบใใ่กใใ
-
Repositoryใฏใฉในใใคใณใใฉในใใฉใฏใใฃๅฑคใซ้ ็ฝฎใใๅ ดๅใRepositoryใใใกใคใณๅฑคใซๅฑใใEntityใ่ฟๅดใใใใจใ่ใใใจใใคใณใใฉในใใฉใฏใใฃๅฑคใซใใใฏใฉใน๏ผRepository๏ผใใใใกใคใณๅฑคใซใใใฏใฉใน๏ผEntity๏ผใซไพๅญใใฆใใ่จใใใ้ๅธธใใใกใคใณๅฑคใฏใใคใณใใฉในใใฉใฏใใฃๅฑคใซไพๅญใใฆใใใใใใฎไธใใคใณใใฉในใใฉใฏใใฃๅฑคใใใกใคใณๅฑคใซไพๅญใใฆใใพใใจใใฌใคใคใผๅๅฃซใๅๆนๅใฎไพๅญ้ขไฟใใใกใ่ฟใฃใฆใ่ค้ใใๆใใฎใงใฏใชใใ ใใใใ
-
RepositoryใจEntityใไธกๆนใInterfaceใจImplementationใซๅใใInterfaceใใใกใคใณๅฑคใซใใใImplementationใใคใณใใฉในใใฉใฏใใฃๅฑคใซใใใInterfaceใงใใRepositoryใฏใInterfaceใงใใEntityใซไพๅญใใไธๆนใงใImplementationใงใใRepositoryใฏImplementationใงใใEntityใซไพๅญใใใฎใงใใใกใคใณๅฑคใซไพๅญใใใใคใณใใฉในใใฉใฏใใฃๅฑคใฎๅ ้จใงๅฎ็ตใใใ
-
ImaplementationใฏใInterfaceใซไพๅญใใฆใใใฎใงใไพๅญ้ขไฟใฎๅๆนๅๆงใฏ่งฃๆฑบใใใจใฏใใใชใใใ
- isXxx()ใฎใใใช็ๅฝๅคใ่ฟใใกใฝใใใใใชใใใธใในใซใผใซใฏใ้ๅธธใฎใจใณใใฃใใฃใๅคใชใใธใงใฏใใซใฏไธๆใๅฒใๅฝใฆใใใชใใใใธใในใซใผใซใใใกใคใณใขใใซไธใง่กจ็พใใใซใฏใ่ซ็ๅญฆใงใใใ่ฟฐ่ชใ๏ผpredicate๏ผใฎใใใชๅฝน็ฎใใใ็นๆฎใชๅคใชใใธใงใฏใใๅฐๅ ฅใใใใใใใใชใใกไปๆงใงใใใไปๆงใฏไธ่ฌใซใๆฌกใฎ3ใคใ่ฆๅฎใใใ
ใชใใธใงใฏใใฎๅฆฅๅฝๆงๆค่จผ๏ผvalidation๏ผ ใชใใธใงใฏใใฎ้ธๅฅๆกไปถ๏ผselection๏ผ ใชใใธใงใฏใใฎ็ๆๆกไปถ๏ผcreation๏ผ
- https://www.ogis-ri.co.jp/otc/hiroba/technical/DDDEssence/chap2.html
- http://d.hatena.ne.jp/j5ik2o/20101229/1293584046
- http://enterprisegeeks.hatenablog.com/entry/2016/07/25/081127
sf2-ddd
โโโ app
โโโ bin
โโโ build
โโโ lib
โโโ src
โ โโโ __VendorPrefix
โ โโโ Application
โ โ โโโ __DomainNameBundle
โ โ โโโ Command
โ โ โ โโโ __Command.php
โ โ โโโ Controller
โ โ โ โโโ __Controller.php
โ โ โโโ DependencyInjection
โ โ โ โโโ Configuration.php
โ โ โ โโโ __CompilerPass.php
โ โ โ โโโ __Extension.php
โ โ โโโ Form
โ โ โ โโโ Extension
โ โ โ โ โโโ __FormExtension.php
โ โ โ โโโ Model
โ โ โ โ โโโ __FormDataModel.php
โ โ โ โโโ Type
โ โ โ โโโ __EntityType.php
โ โ โโโ Page
โ โ โ โโโ __Page.php
โ โ โโโ Resources
โ โ โ โโโ config
โ โ โ โ โโโ routing.yml
โ โ โ โ โโโ services.yml
โ โ โ โโโ translations
โ โ โ โโโ views
โ โ โโโ Tests
โ โ โ โโโ Command
โ โ โ โ โโโ __CommandTestCases
โ โ โ โโโ Controller
โ โ โ โ โโโ __ControllerTestCases
โ โ โ โโโ DependencyInjection
โ โ โ โ โโโ __DependencyInjectionTestCases
โ โ โ โโโ Form
โ โ โ โ โโโ __FormTestCases
โ โ โ โโโ Page
โ โ โ โโโ __PageTestCases
โ โ โโโ __DomainNameAppBundle.php
โ โโโ Component
โ โโโ Domain
โ โ โโโ Shared
โ โ โ โโโ Value
โ โ โ โโโ Gender.php
โ โ โ โโโ Interval.php
โ โ โโโ __DomainNameBundle
โ โ โโโ Application
โ โ โ โโโ __ApplicationService.php
โ โ โโโ Entity
โ โ โ โโโ Model
โ โ โ โ โโโ __EntityDataModel.php
โ โ โ โโโ __EntityExtendsDataModel.php
โ โ โโโ Event
โ โ โ โโโ __DomainEvent.php
โ โ โโโ Exception
โ โ โ โโโ __DomainException.php
โ โ โโโ Interface
โ โ โ โโโ Dto
โ โ โ โ โโโ __ServiceDto.php
โ โ โ โโโ Facade
โ โ โ โโโ __ServiceFacade.php
โ โ โโโ Listener
โ โ โ โโโ __DomainEventListener.php
โ โ โ โโโ __EntityListener.php
โ โ โโโ Repository
โ โ โ โโโ __EntityRepositoryInterface.php
โ โ โโโ Resources
โ โ โ โโโ config
โ โ โ โโโ doctrine
โ โ โ โ โโโ __Document.mongodb.xml
โ โ โ โ โโโ __Entity.orm.xml
โ โ โ โโโ services.yml
โ โ โ โโโ validation.yml
โ โ โโโ Service
โ โ โ โโโ __DomainService.php
โ โ โโโ Specification
โ โ โ โโโ __DomainSpecification.php
โ โ โโโ Tests
โ โ โ โโโ Application
โ โ โ โ โโโ __ApplicationServiceTestCases
โ โ โ โโโ Entity
โ โ โ โ โโโ __EntityTestCases
โ โ โ โโโ Event
โ โ โ โ โโโ __EventTestCases
โ โ โ โโโ Exception
โ โ โ โ โโโ __ExceptionTestCases
โ โ โ โโโ Interface
โ โ โ โ โโโ __InterfaceTestCases
โ โ โ โโโ Listener
โ โ โ โ โโโ __ListenerTestCaess
โ โ โ โโโ Service
โ โ โ โ โโโ __ServiceTestCases
โ โ โ โโโ Specification
โ โ โ โ โโโ __SpecificationTestCases
โ โ โ โโโ Validator
โ โ โ โโโ __ValidatorTestCases
โ โ โโโ Validator
โ โ โ โโโ __DomainValidator.php
โ โ โโโ __DomainNameBundle.php
โ โโโ Infrastructure
โ โโโ __DomainNameBundle
โ โโโ Messaging
โ โ โโโ __EmailConsumer.php
โ โ โโโ __LoggingConsumer.php
โ โโโ Repository
โ โ โโโ __DocumentRepository.php
โ โ โโโ __EntityRepository.php
โ โโโ Tests
โ โ โโโ Messaging
โ โ โ โโโ __MessagingTestCases
โ โ โโโ Repository
โ โ โโโ __RepositoryTestCases
โ โโโ __DomainNameBundle.php
โโโ tests
โ โโโ SeleniumTestSuite
โโโ vendor
โโโ web
src/main/java
โโโ UserInterface
โ โโโ ... (java files)
โโโ Application
โ โโโ OneUseCase.java
โ โโโ AnotherUseCase.java
โ โโโ YetAnotherUseCase.java
โโโ Domain
โ โโโ SubDomain1
โ โ โโโ ... (java files)
โ โโโ SubDomain2
โ โ โโโ ... (java files)
โ โโโ SubDomain3
โ โ โโโ ... (java files)
โ โโโ SubDomain3
โ โโโ ... (java files)
โโโ Infrastructure
โโโ database
โ โโโ ... (java files)
โโโ logging
โ โโโ ... (java files)
โโโ httpclient
โโโ ... (java files)
src
โโโ Acme
โโโ ApiBundle
โ โโโ Controller
โ โ โโโ UserController.php
โ โโโ Resources
โ โ โโโ config
โ โ โ โโโ routing.yml
โ โ โ โโโ serializer
โ โ โ โโโ User.User.yml
โ โ โ โโโ User.UserId.yml
โ โ โโโ views
โ โ โโโ User
โ โ โโโ all.html.twig
โ โโโ AcmeApiBundle.php
โโโ CoreDomain
โ โโโ User
โ โโโ User.php
โ โโโ UserId.php
โ โโโ UserRepository.php
โโโ CoreDomainBundle
โโโ DependencyInjection
โ โโโ AcmeCoreDomainExtension.php
โโโ Repository
โ โโโ InMemoryUserRepository.php
โโโ Resources
โ โโโ config
โ โโโ repositories.xml
โโโ AcmeCoreDomainBundle.php
application
user
UserController.php
UserService.php
blog
BlogController.php
BlogService.php
domain
user
Avatar.php
Address.php
UserService.php
UserRepository
blog
Post.php
Comment.php
BlogService.php
BlogRepository.php
User.php
Blog.php
infrastructure
user
UserService.php
blog
BlogService.php
app/
----ToDo/
--------App/
------------Providers/
----------------ToDoServiceProvider.php
----------------ConfigServiceProvider.php
------------Validators/
----------------LaravelValidator.php
------------ValueObject.php
------------BaseModel.php
--------Domain/
------------List/
----------------EloquentList.php
----------------ListRepository.php
----------------ListService.php
----------------ListValidator.php
----------------Priority.php
------------Task/
----------------EloquentTask.php
----------------TaskRepository.php
----------------TaskService.php
----------------TaskValidator.php
--------Http/
------------Lists/
----------------ListController.php
----------------ListPresenter.php
----------------ListViewComposer.php
------------Tasks/
----------------TaskController.php
--------Infrastructure/
------------Lists/
----------------ListRepositoryCacheDecorator.php
----------------EloquentListRepository.php
------------EloquentTaskRepository.php
com.some.namespace
application
services = (app services that talk to repositories and domain model)
validators = (validators for DTOs in app service layer)
domain
events = (domain events)
exceptions = (exceptions in domain - eg. during validation or business logic)
factories = (used to construct domain model objects - eg. construct from DTOs)
model = (full domain model with all entities, value objects etc.)
repositories = (interfaces only - implemented in infrastruct.)
services = (domain service interfaces only - implemented in infrastr.)
infrastructure
messaging = (message listeners - eg RabbitMQ - talks to app services)
repositories = (repository implementations)
sql = (one version of repository implementation)
rest = (rest endpoints - talks to application services)
services = (domain service implementations)
[projectName]-domain
โsrc
โmain
โjava
โ โcom
โ โexample
โ โdomain ...(1)
โ โmodel
โ โ โXxx.java
โ โ โYyy.java
โ โ โZzz.java
โ โrepository ...(2)
โ โ โxxx
โ โ โ โXxxRepository.java
โ โ โyyy
โ โ โ โYyyRepository.java
โ โ โzzz
โ โ โZzzRepository.java
โ โ โZzzRepositoryImpl.java
โ โservice ...(3)
โ โaaa
โ โ โAaaService.java
โ โ โAaaServiceImpl.java
โ โbbb
โ โBbbService.java
โ โBbbServiceImpl.java
โresources
โMETA-INF
โspring
โ[projectname]-domain.xml ...(4)
โ[projectname]-infra.xml ...(5)
(1) ใใกใคใณใชใใธใงใฏใใๆ ผ็ดใใใ (2) ใชใใธใใชใๆ ผ็ดใใใใจใณใใฃใใฃใใจใซใใใฑใผใธใไฝๆใใใ ้ข้ฃใใใจใณใใฃใใฃใใใใฐใไธปใจใชใใจใณใใฃใใฃใฎใใใฑใผใธใซใๅพใจใชใใจใณใใฃใใฃใฎRepositoryใ้ ็ฝฎใใใ (OrderใจOrderLineใชใฉ)ใDTOใๅฟ ่ฆใชๅ ดๅใฏใใใฎใใใฑใผใธใซ้ ็ฝฎใใใ RepositoryImplใฏใใคใณใใฉในใใฉใฏใใฃๅฑคใซๅฑใใใใ้ๅธธใใใฎใใญใธใงใฏใใซๅซใใฆใๅ้กใชใใ ็ฐใชใใใผใฟในใใขใไฝฟใใชใฉใ่คๆฐใฎๆฐธ็ถๅๅ ใใใใๅฎ่ฃ ใ้ ่ฝใใใๅ ดๅใฏใๅฅใใญใธใงใฏใ(ใพใใฏใใใฑใผใธ)ใซใRepositoryImplใๅฎ่ฃ ใใใใใซใใใ (3) ใตใผใในใๆ ผ็ดใใใๆฅญๅ(ใพใใฏใจใณใใฃใใฃ)ใใจใซใใใใฑใผใธใคใณใฟใใงใผในใจๅฎ่ฃ ใใๅใ้ๅฑคใซ้ ็ฝฎใใใ ๅ ฅๅบๅใฏใฉในใๅฟ ่ฆใชๅ ดๅใฏใใใฎใใใฑใผใธใซ้ ็ฝฎใใใ (4) ใใกใคใณๅฑคใซ้ขใใBeanๅฎ็พฉใ่กใใ (5) ใคใณใใฉในใใฉใฏใใฃๅฑคใซ้ขใใBeanๅฎ็พฉใ่กใใ
[projectName]-web
โsrc
โmain
โjava
โ โcom
โ โexample
โ โapp ...(1)
โ โabc
โ โ โAbcController.java
โ โ โAbcForm.java
โ โ โAbcHelper.java
โ โdef
โ โDefController.java
โ โDefForm.java
โ โDefOutput.java
โresources
โ โMETA-INF
โ โ โspring
โ โ โapplicationContext.xml ...(2)
โ โ โapplication.properties ...(3)
โ โ โspring-mvc.xml ...(4)
โ โ โspring-security.xml ...(5)
โ โi18n
โ โapplication-messages.properties ...(6)
โwebapp
โWEB-INF
โviews ...(7)
โ โabc
โ โ โlist.jsp
โ โ โcreateForm.jsp
โ โdef
โ โlist.jsp
โ โcreateForm.jsp
โweb.xml
(1) ใขใใชใฑใผใทใงใณๅฑคใฎๆงๆ่ฆ็ด ใๆ ผ็ดใใใใใฑใผใธใ (2) ใขใใชใฑใผใทใงใณๅ จไฝใซ้ขใใBeanๅฎ็พฉใ่กใใ (3) ใขใใชใฑใผใทใงใณใงไฝฟ็จใใใใญใใใฃใๅฎ็พฉใใใ (4) SpringMVCใฎ่จญๅฎใ่กใBeanๅฎ็พฉใ่กใใ (5) SpringSecurityใฎ่จญๅฎใ่กใBeanๅฎ็พฉใ่กใใ (6) ็ป้ข่กจ็คบ็จใฎใกใใปใผใธ(ๅฝ้ๅๅฏพๅฟ)ๅฎ็พฉใ่กใใ (7) View(jsp)ใๆ ผ็ดใใใ
[projectName]-env
โsrc
โmain
โresources
โMETA-INF
โspring
โ[projectname]-env.xml ...(1)
โ[projectname]-infra.properties ...(2)
(1) ็ฐๅขใซไพๅญใใBeanๅฎ็พฉ(DataSource็ญ)ใ่กใใ (2) ็ฐๅขใซไพๅญใใใใญใใใฃใๅฎ็พฉใใใ
ๅ่ๆ็ฎ