Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DDD勉強会 ~戦略的設計 編~

DDD勉強会 ~戦略的設計 編~

副業先のDDD勉強会で使った資料です。
戦略的設計と戦術的設計の2回に分けて実施予定の前半部分です。

ITO Shogo

May 25, 2020
Tweet

More Decks by ITO Shogo

Other Decks in Programming

Transcript

  1. ҏ౻উޜ %%%ษڧձdઓུతઃܭฤd

  2. ࣗݾ঺հ  • ҏ౻উޜ ͠ΐ͏͝ !TIPXXJO
 • -"13"4גࣜձࣾ$50

  3. ܦྺ  • גࣜձࣾ... d  • "84 3BJMTͰडୗ։ൃ Πϯϑϥ

    όοΫΤϯυϝΠϯ  • શࣾਓͰϑϧϦϞʔτϫʔΫ •-"13"4גࣜձࣾ d  •ڞಉ૑ۀऀ $50 •ΤϯδχΞεΫϥϜϚελʔϓϩμΫτΦʔφʔΤϯδχΞ •Ϛωδϝϯτ ૊৫ͮ͘Γ ࠾༻͋ͨΓ͕ຊۀ
  4. ࠷ۙϋϚ͍ͬͯΔ͜ͱ  • (PݴޠͰ%%% • ೥લʹ3BJMTͰॻ͍ͨझຯαʔϏεΛ(PͰॻ͖௚͠த • Ϋιίʔυ͚ͩͲ੒௕Λ࣮ײͰ͖ͯྑ͍ • 'BDUPSJP

    • ࠷ۙͰ͸ͳ͍ʜ ೥༡ΜͰ͍Δ • ֦ுੑͷߴ͍޻৔Λઃܭ͢Δͷָ͕͍͠Α
  5. None
  6. Ξϯέʔτ  Έͳ͞Μͷ%%%ཧղ౓Λڭ͑ͯԼ͍͞ʂ

  7. %%%ཧղ౓Ξϯέʔτ

  8. Έͳ͞ΜͲ͜Ͱ͔͢ʁ ᶃ ᶄ ᶅ ᶆ ᶇ ᶃݴ༿͸ฉ͍ͨ͜ͱ͋Δ ᶄͳΜͱͳ͘஌ͬͯΔ ᶅ׬શʹཧղ͍ͯ͠Δ ᶆΘ͔Δؾ͕͢Δ͚Ͳɺ

    Θ͔Δͬͯݴ͍ͮΒ͍ ᶇνϣοτϫΧϧ
  9. ᶅ ᶃݴ༿͸ฉ͍ͨ͜ͱ͋Δ ᶄͳΜͱͳ͘஌ͬͯΔ ᶅ׬શʹཧղ͍ͯ͠Δ ᶆΘ͔Δؾ͕͢Δ͚Ͳɺ Θ͔Δͬͯݴ͍ͮΒ͍ ᶇνϣοτϫΧϧ Θͨ͠͸͜͜Ͱ͢ʜɹ

  10. ࠓ೔ͷ໨త  %%%ͷೝࣝΛଗ͑Δ͜ͱ

  11. %%%ͱݴΘΕͯԿΛࢥ͍ු͔΂·͔͢ʁ  ϢϏΩλεݴޠ ϞσϦϯά ΦχΦϯΞʔΩςΫνϟ ϨΠϠʔυΞʔΩςΫνϟ υϝΠϯΤΩεύʔτ ڥք͚ͮΒΕͨίϯςΩετ 7BMVF0CKFDU &OUJUZ

  12. %%%ͷΞϓϩʔνͷશମ૾  %%%ͷ໨త͸ʮϞσϦϯάΛ௨ͯ͡ιϑτ΢ΣΞͷՁ஋ΛߴΊΔʯ͜ͱ ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత


    ઃܭ ઓज़త
 ઃܭ Ϟσϧͷ࣮૷
  13. େࣄͳͷ͸͜͜  ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత
 ઃܭ

    ઓज़త
 ઃܭ Ϟσϧͷ࣮૷
  14. ܰྔ%%%ͱݴΘΕΔ΋ͷ  ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք υϝΠϯ ιϑτ΢ΣΞ ઓज़త
 ઃܭ left blank Ϟσϧͷ࣮૷

  15. Ξϓϩʔνͷछྨ  υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత
 ઃܭ ઓज़త
 ઃܭ υϝΠϯ

    ιϑτ΢ΣΞ ઓज़త
 ઃܭ υϝΠϯ ιϑτ΢ΣΞ ੈͷதͷଟ͘ͷ ιϑτ΢ΣΞ ܰྔ%%% %%%
  16. %%%ͷ໨తͬͯͳΜ͚ͩͬ 

  17. ࠶ܝ େࣄͳͷ͸͜͜  ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత


    ઃܭ ઓज़త
 ઃܭ Ϟσϧͷ࣮૷
  18. ઓज़ΑΓ΋ઓུͷ΄͏͕ॏཁ  ઓज़త
 ઃܭ  ઓུత
 ઃܭ ϢϏΩλεݴޠ ϞσϦϯά ϨΠϠʔυΞʔΩςΫνϟ

    υϝΠϯΤΩεύʔτ ΦχΦϯΞʔΩςΫνϟ &OUJUZ 7BMVF0CKFDU ڥք͚ͮΒΕͨίϯςΩετ
  19.  Ͱ΋ੈͷதɺઓज़ͷ࿩୊ͷํ͕ଟ͘ͳ͍ʁ

  20.  ઓज़ͱઓུΛΠϝʔδͯ͠ΈΔ

  21. ઓज़ͷΠϝʔδ  େྔͷఢ ਖ਼໘ಥഁ ઓज़ ରԠίετ ఢͷڧ͞ ઓज़ͳ͠ ઓज़͋Γ ʓʓਞܗ

  22. ઓज़తઃܭͷ࠾༻  ࣗࠃ ΤϯδχΞνʔϜ ͚ͩͰ׬݁͢ΔͷͰ औΓೖΕ΍͍͢

  23. ઓུͷΠϝʔδ  େྔͷఢ ઓུ ྡࠃͷ஥ؒ ྡࠃͷ஥ؒ ରԠίετ ఢͷڧ͞ ઓज़ͳ͠ ઓज़͋Γ

    ઓུ͋Γ
  24. ઓུతઃܭͷ࠾༻  ଞࠃ ϏδωεαΠυ ΋ר͖ࠐ·ͳ͍ͱ ͍͚ͳ͍ͷͰେม Ͱ΋ר͖ࠐΊͨΒڧ͍

  25. ͰɺΦεεϝͷઓ͍ํ͸ʁ  • %%%ෆ࠾༻ʁ • ܰྔ%%%ʁ • %%%ʁ

  26.  ࣮૷ίετ ର৅υϝΠϯͷෳࡶ͞ ઓज़ͳ͠ ઓज़͋Γ ઓུ͋Γ %%%ෆཁ ܰྔ%%% %%% ର৅υϝΠϯͷෳࡶ͞Λߟ͑Α͏

    • ଟ͘ͷιϑτ΢ΣΞ͕ѻ͍ͬͯ ΔυϝΠϯͷෳࡶ͞͸%%%͕ඞ ཁͳϨϕϧ • ࠓ͸ܰྔ%%%͕࠷దͳυϝΠϯ Λର৅ͱ͍ͯͯ͠΋ɺ਺೥ޙʹ ͸ର৅ͱͳΔυϝΠϯ͕૿͑ͯ ෳࡶ͕͞૿͢͜ͱ΋ଟ͍ ෳࡶ͞ͷ໌֬ͳج४͸ʮ࣮ફυϝΠϯۦಈઃܭʯͷຊΛࢀর
  27. ٳܜ☕

  28. େࣄͳϞσϧͷ࿩  ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత
 ઃܭ

    ઓज़త
 ઃܭ Ϟσϧͷ࣮૷
  29.  ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ Ϟσϧͱ͸

  30. εϚʔτϑΥϯͷྫ  • ݱ࣮ʹ͸਺ଟ͘ͷཁૉ͕͋Δ • ػछ໊ • ϝʔΧʔ • 04

    • ॴ༗ऀ • Ϙλϯͷ਺ • ইͷ༗ແ • ॴ༗ྺ • FUDʜ
  31. ৽඼εϚϗͷൢചΛର৅ͷυϝΠϯͱ͢Δ  • ݱ࣮ʹ͸਺ଟ͘ͷཁૉ͕͋Δ • ػछ໊ • ϝʔΧʔ • 04

    • ॴ༗ऀ • Ϙλϯͷ਺ • ইͷ༗ແ • ॴ༗ྺ • FUDʜ ໰୊ղܾʹ ͜ͷ৘ใ͸ ෆཁ Ϟσϧͱ͸ʜ໰୊ղܾͷͨΊʹɺ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ
  32. ໰୊ղܾͷͨΊʹɺ෺ࣄͷಛఆͷଆ໘Λந৅Խ͢Δͱ  Ϟσϧͱ͸ʜ໰୊ղܾͷͨΊʹɺ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ ݱ࣮ੈքΛϞσϧԽ

  33. ѱ͍Ϟσϧͱ͸ʜ໰୊ղܾ͕Ͱ͖ͳ͍Ϟσϧ  Ϟσϧͱ͸ʜ໰୊ղܾͷͨΊʹɺ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ ϓϥϯ͸ Ͳ͏͠·͔͢ʁ ϓϥϯ͕දݱͰ͖ͳ͍ʜ

  34.  ΋͏গ͠ෳࡶͰݱ࣮తͳྫΛߟ͑ͯΈΔ

  35. ࿀׆αʔϏε  ͭͷओཁͳυϝΠϯͰߏ੒͞Ε͍ͯΔ ࿀ਓީิ Λݕࡧ ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾ঺հ

  36. ϞσϦϯάͯ͠ΈΔ  ແྉϢʔβ Ͱ΋Մೳ ༗ྉϢʔβ ͷΈՄೳ ϓϨϛΞϜϢʔβ ͷΈՄೳ ࿀ਓީิ Λݕࡧ

    ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾ঺հ
  37. ͜ΕΛιϑτ΢ΣΞͰ࣮૷͢Δͱʜ  ແྉϢʔβ Ͱ΋Մೳ ༗ྉϢʔβ ͷΈՄೳ ϓϨϛΞϜϢʔβ ͷΈՄೳ JG OPUVTFSJT@QBJE@VTFS

    \
 SBJTF"VUIPSJ[BUJPO&SSPS ^ ʜ JG OPUVTFSJT@QBJE@VTFS \
 SBJTF"VUIPSJ[BUJPO&SSPS ^ JG OPUVTFSJT@QSFNJVN \
 SBJTF"VUIPSJ[BUJPO&SSPS ^ ʜ JG OPUVTFSJT@QSFNJVN \
 SBJTF"VUIPSJ[BUJPO&SSPS ^ ࿀ਓީิ Λݕࡧ ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾ঺հ • ೝՄʹؔ͢ΔJGจ͕େྔʹग़ݱ • JGจͷॻ͖๨ΕͰແྉϢʔβͰ΋༗ྉ Ϣʔβ޲͚ػೳ͕࢖͑Δόά͕ʜ
  38. CFUUFSͳϞσϦϯά  ࿀ਓީิ Λݕࡧ ؾʹͳͬͨਓͱ ϝοηʔδ ಈըͰ ࣗݾ঺հ ແྉϢʔβ Ͱ΋ͳΕΔ

    ༗ྉϢʔβ ͷΈͳΕΔ ϓϨϛΞϜϢʔβ ͷΈͳΕΔ • ೝՄ͸֤υϝΠϯͷϢʔβΛ ࡞੒͢Δ࣌ʹ౓͚ͩߦ͏
  39.  ϞσϦϯά ઓུ ͷউར

  40. ࠶ܝ େࣄͳϞσϧͷ࿩  ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత


    ઃܭ ઓज़త
 ઃܭ Ϟσϧͷ࣮૷ %%%ͷ໨త͸ʮϞσϦϯάΛ௨ͯ͡ιϑτ΢ΣΞͷՁ஋ΛߴΊΔʯ͜ͱ
  41.  ࣮૷ίετ ର৅υϝΠϯͷෳࡶ͞ ઓज़ͳ͠ ઓज़͋Γ ઓུ͋Γ %%%ෆཁ ܰྔ%%% %%% ͖ͬ͞ΑΓೲಘײ͋Γ·͔͢ʁ

  42.  ࣮૷ίετ ର৅υϝΠϯͷෳࡶ͞ ઓज़ͳ͠ ઓज़͋Γ ઓུ͋Γ %%%ෆཁ ܰྔ%%% %%% ιϑτ΢ΣΞͷ৔߹͸͜ͷํ͕ഽײʹ͍ۙ

    0 /? ͳܗ
  43. ྑ͍ϞσϧΛͭ͘Δʹ͸  • ڥք͚ͮΒΕͨίϯςΩετΛ໌Β͔ʹ͢Δ • ։ൃऀ͚ͩͰ͸ͳ͘ɺϏδωεଆͷਓͱ΋ಉ͡ݴ༿Λ࢖͏ ϢϏΩλεݴޠ  • ͦΕʹΑΓɺυϝΠϯʹৄ͍͠ਓ

    υϝΠϯΤΩεύʔτ ͔Β஌ࣝΛಘΔ • ӡ༻ͯ͠ಘͨ஌ݟΛܧଓతʹϞσϧʹϑΟʔυόοΫ͢Δ ීஈͳΜͱͳ͘΍͍ͬͯΔؾ΋͢Δ
  44. υϝΠϯϞσϧਤΛڞ௨ݴޠͱͯ͠ॻ͘ͷ͕Φεεϝ  • ΫϥεਤʹͦͷϞσϧ͕͍࣋ͬͯΔ੍໿஌ࣝΛ௥ه • Ϗδωεଆ΋ίʔυΛಡ·ͳͯ͘΋࢓༷͕೺ѲͰ͖Δ • 5%%ͱ૬ੑ͕ྑ͍

  45. ྑ͍Ϟσϧ͕Ͱ͖ͨΒ࣍͸࣮૷  %%%ͷ໨త͸ʮϞσϦϯάΛ௨ͯ͡ιϑτ΢ΣΞͷՁ஋ΛߴΊΔʯ͜ͱ ιϑτ΢ΣΞԽର৅ͷݱ࣮ੈք ໰୊ղܾͷͨΊʹɺ ෺ࣄͷಛఆͷଆ໘Λந৅Խͨ͠΋ͷ υϝΠϯ Ϟσϧ ιϑτ΢ΣΞ ઓུత


    ઃܭ ઓज़త
 ઃܭ Ϟσϧͷ࣮૷
  46. ྑ͍ιϑτ΢ΣΞΛ࡞Δʹ͸  • Ϟσϧ͸ܧଓతʹվળ͞ΕΔͷͰɺͦΕΛܧଓతʹ൓өͰ͖Διϑτ΢ΣΞ͕ٻ ΊΒΕΔ • සൟͳมߋʹ଱͑͏Δʹ͸ɺ֦ுੑͷߴ͍ઃܭ͕ඞཁ • &OUJUZ΍3FQPTJUPSZͳͲͷσβΠϯύλʔϯΛ࢖༻ •

    ڥք͚ͮΒΕͨίϯςΩετΛҙࣝͨ͠ઃܭ • ίϯςΩετ͝ͱʹϚΠΫϩαʔϏεԽ͢Δ ઓज़తઃܭͷ͸ͳ͠
  47.  ࣍ճʹଓ͘ʜ