Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
DDDͬͯԿͩΖ͏ʁ Abe Asami
Slide 2
Slide 2 text
ࣗݾհ Abe Asami “きの子 ” (大阪のフリーランスプログラマ) http://nocono.net/ @aa7th Scala、Andorid(Java/Kotlin) 最近Scala.jsでReactNative書いてます
Slide 3
Slide 3 text
ൃදͷ༰ • DDDͬͯͦͦԿͳͷ͔ • 2015/9 ؔDDD.javaͷ༰ΛৼΓฦΓͳ͕Β࡞Γ·ͨ͠ • ˒ ͕͍͍ͯΔՕॴɺ͜ͷͷ૿ా͞ΜͷεϥΠυ͔ ΒҾ༻ͨ͠ղઆͰ͢ (http://www.slideshare.net/ masuda220/ss-52462322) • ࠓͷճͰΤϯδχΞɾσβΠφʔ྆ํ͕ରʹͳ͍ͬͯΔ ཧ༝
Slide 4
Slide 4 text
DDDͬͯͦͦԿͳͷʁ
Slide 5
Slide 5 text
DDD (Domain-driven design) • υϝΠϯۦಈઃܭ • υϝΠϯΛத৺ʹߟ͑ͨιϑτΣΞઃܭ ख๏
Slide 6
Slide 6 text
υϝΠϯͱʁ • ιϑτΣΞΛར༻͢Δਓͨͪͷ ʮ׆ಈʯͱʮؔ৺ࣄʯ˒ • ։ൃऀͰͳ͘ɺར༻ऀͷݴ༿Ͱදݱ͢Δ
Slide 7
Slide 7 text
ྫ͑
Slide 8
Slide 8 text
ϞϯελʔΛ֗தͰั֫ɾҭ ͢ΔҐஔใήʔϜͷυϝ Πϯ(Ϣʔβʔͷ׆ಈɾؔ৺ ࣄ)Λߟ͑ͯΈΑ͏ɻ
Slide 9
Slide 9 text
ͳΜͱ͔GO(Ծ໊)ͷυϝΠϯ • ϓϨΠϠʔϞϯελʔΛั֫͢Δ • ั֫ͨ͠ϞϯελʔͰઓͬͯఢͷਞΛୣ͏ • ਞΛୣ͏ͱϓϨΠϠʔͷϨϕϧ্͕͕Δ • × Ϟϯελʔͷ࢟ARٕज़ʹΑͬͯΧϝϥʹࣸͬͨ ෩ܠʹ߹͞ΕΔ (←Ͳ͏࣮ݱ͢Δ͔Ϣʔβʔͷؔ৺ࣄͰͳ ͍) • ̋ Ϟϯελʔͷ࢟ݱ࣮ੈքʹଘࡏ͢Δ͔ͷΑ͏ʹݟ͑Δ
Slide 10
Slide 10 text
͜͜Ͱ͏̍ͭେࣄͳ֓೦ ʮϢϏΩλεݴޠʯʹ͍ͭͯ આ໌͠·͢
Slide 11
Slide 11 text
ϢϏΩλεݴޠ • ͏ݴ༿Λ౷Ұ͢Δ • 1ͭͷݴ༿ಉ͡ҙຯɺ1ͭͷҙຯಉ͡ݴ༿ ˒
Slide 12
Slide 12 text
ͳΜͱ͔GO(Ծ໊)ͷ ϢϏΩλεݴޠ • ʮϓϨΠϠʔʯʮτϨʔφʔʯ • ʮਞʯʮδϜʯ • ʮั֫ʯʮήοτʯ
Slide 13
Slide 13 text
ͳΜͱ͔GO(Ծ໊)ͷ ϢϏΩλεݴޠ • ʮϓϨΠϠʔʯʮτϨʔφʔʯ • ʮϞϯελʔʯʮ̋̋Ϟϯʯ • ʮਞʯʮδϜʯ • ʮั֫ʯʮήοτʯ νʔϜͰ͏ݴ༿Λ౷Ұ͢Δ දهΏΕμϝઈର
Slide 14
Slide 14 text
վΊͯ̋̋ϞϯGOͷυϝΠϯ • τϨΠφʔ̋̋ϞϯΛήοτ͢Δ • ήοτͨ̋̋͠ϞϯͰઓͬͯఢͷδϜΛୣ͏ • δϜΛୣ͏ͱτϨΠφʔͷϨϕϧ্͕͕Δ • ̋̋Ϟϯͷ࢟ݱ࣮ੈքʹଘࡏ͢Δ͔ͷΑ͏ ʹݟ͑Δ
Slide 15
Slide 15 text
͜ΕΛ͜ͷݴ༿ͷ௨Γʹ ͳΔͦ͘ͷ·· ϓϩάϥϛϯάίʔυʹ མͱ͜͠Ή
Slide 16
Slide 16 text
τϨʔφʔ(Trainer)Ϟσϧ̋̋Ϟϯ(̋̋mon) Λήοτ(get)͢Δͱ͍͏ৼΔ͍Λ࣋ͭ τϨΠφʔ̋̋ϞϯΛήοτ͢Δ ↓
Slide 17
Slide 17 text
͜Μͳײ͡ͰɺϢʔβʔઢ Ͱͷࢥߟͱ࣮ࡍͷίʔυͷണ Λۃྗͳͦ͘͏ʂͱ͍͏ͷ ͕υϝΠϯۦಈઃܭ
Slide 18
Slide 18 text
DDDͷޮՌ • มߋʹڧ͘ͳΔ • Ϟσϧͱίʔυ͕Ұக͍ͯ͠ͳ͍ = Ͷ͡Ε • Ͷ͡Ε͕͋Δͱมߋ͕େมʹͳ͍ͬͯ͘ • ్தࢀՃͷϝϯόʔͱҙࣝΛ౷Ұ͍͢͠ • ͱ͍͑ɺϞσϧͱίʔυΛ౷Ұ͢Δͱ͍͏ͷ͔ͳΓ͠ ͍ɾɾɾ
Slide 19
Slide 19 text
ͱ͍͏Θ͚ͰɺDDDࣗମ ΤϯδχΞͷͨΊͷ ιϑτΣΞઃܭख๏
Slide 20
Slide 20 text
ࠓͳͥσβΠφ͞Μ ࢀՃରʹ͍͍ͬͯΔͷ͔
Slide 21
Slide 21 text
UIσβΠϯͱใઃܭ • UIϢʔβʔࢹͰใΛཧɾઃܭͯ͠ σβΠϯ͢Δඞཁ͕͋Δ • σβΠφʔ͞ΜୡͷதͰʮใઃܭʯͱ͍͏ ΩʔϫʔυΛ࠷ۙΑ͖͘͘
Slide 22
Slide 22 text
• DDDཁϢʔβʔࢹͰใΛཧɾઃܭ ͢Δ͜ͱ • ಉ͡͡ΌΜʂ • ΤϯδχΞɾσβΠφʔؔͳ͘ɺʮϢʔβʔ ࢹͰใΛઃܭ͢Δʯͱ͍͏ςʔϚͰͤ ໘ന͍Μ͡ΌͶʁͬͯؾ͕ͨ͠ɻ
Slide 23
Slide 23 text
ͱ͍͏Θ͚Ͱ • ·͊ɻ͋Μ·Γ͍͜͠ͱߟ͑ͣɺ͍ΖΜͳ ͖͖͍ͨͳͬͯࢥ͍·͢ɻ
Slide 24
Slide 24 text
ࢀߟࢿྉ • ʮυϝΠϯۦಈઃܭʯͷෳࡶ͞ʹཱ͔ͪ͏ http:// www.slideshare.net/masuda220/ss-52462322 • ScalaίʔυͰΘ͔ͬͨؾʹͳΔDDD | GREE Engineers' Blog http://labs.gree.jp/blog/2013/12/ 9354/ • ͪ͜ΒͷهࣄͰ”ϋϯλʔ͕ϞϯελʔΛङΔ”Α ͏ͳήʔϜͷυϝΠϯʹ͍ͭͯॻ͔Ε͍ͯ·͢ɻ
Slide 25
Slide 25 text
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ