クリーンアーキテクチャとアトミックデザインをやってみた話
by
a.shimomura
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
ϦϦʔε·ͳ͍PJΛ ΫϦʔϯΞʔΩςΫνϟͱ ΞτϛοΫσβΠϯͰϦϑΝΫλͨ͠ ૼଜ ݠୋ
Slide 2
Slide 2 text
ࣗݾհ • twitter : @akshimo • php, ruby, java, vue.js, aws, alibaba cloud… • ͨ·ʹ৽ਓݚमߨࢣͱ͔ͬͨΓ • webͰԿͰɻflutter͡Ί͍ͨɻ • ͖ͳ͓ञɿΞϒαϯ
Slide 3
Slide 3 text
࠷ॳʹ͓ͼ ෩࿊ෑ͛ա͗ͨͷͰૣʹ͍͖·͢ɻ ͠ڵຯ͋Εੋඇ͋ͱͰฉ͍ͯͩ͘͞ ͍ɻ
Slide 4
Slide 4 text
agenda • ΫϦʔϯΞʔΩςΫνϟɺΞτϛοΫσβΠϯ ͱ • ͳΜͰಋೖͯ͠Έͨͷʁ • ͲΜͳײ͡Ͱಋೖͨ͠ͷʁ • ಋೖͯ͠ΈͯͲΜͳײ͡ʁ
Slide 5
Slide 5 text
agenda • ΫϦʔϯΞʔΩςΫνϟɺΞτϛοΫσβΠϯ ͱ • ͳΜͰಋೖͯ͠Έͨͷʁ • ͲΜͳײ͡Ͱಋೖͨ͠ͷʁ • ಋೖͯ͠ΈͯͲΜͳײ͡ʁ
Slide 6
Slide 6 text
ڵຯ͋ΕޙͰ ฉ͍͍ͯͩ͘͞
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
͍ΘΏΔ%%%Λ࣮ݱ͢ΔͨΊͷ ΞʔΩςΫνϟͰ͢
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
ίϯϙʔωϯτΛ ͳΜ͔͛͢ʔࡉ͔͚͘ΔͭͰ͢
Slide 11
Slide 11 text
agenda • ΫϦʔϯΞʔΩςΫνϟɺΞτϛοΫσβΠϯ ͱ • ͳΜͰಋೖͯ͠Έͨͷʁ • ͲΜͳײ͡Ͱಋೖͨ͠ͷʁ • ಋೖͯ͠ΈͯͲΜͳײ͡ʁ
Slide 12
Slide 12 text
લఏ • ӽڥEC • ׂͱ࠷ۙʹϦϦʔεࡁΈ • ϦϑΝΫλϦϯά
Slide 13
Slide 13 text
લఏ • laravel5.5 • php7.2 • vue.js • flocss • docker-compose • alibaba cloud
Slide 14
Slide 14 text
ಋೖͨ͠ཧ༝ 1. ৭ΜͳπϥΈ͕͋ͬͨ ʢཁιʔε͕Ԛ͍ʣ 2. औಘݩͷมߋ͕֬ఆ͠ ͍ͯͨ
Slide 15
Slide 15 text
πϥΈʢόοΫΤϯυʣ • MVC+Service • Ұ෦FatControllerɺFatService • యܕతͳτϥϯβΫγϣϯεΫϦϓτ • දࣔ༻ϩδοΫͱϏδωεϩδοΫ͕ࠞͬ͟ ͨڊେModel
Slide 16
Slide 16 text
πϥΈʢϑϩϯτΤϯυʣ • ViewʹϩδοΫೖΓ·͘Γ • ը໘ͱίϯϙʔωϯτ͕̍ର̍ • ϑΝΠϧ͕ڊେʹ • ͏jQueryͰΑ͘Ͷʁ
Slide 17
Slide 17 text
agenda • ΫϦʔϯΞʔΩςΫνϟɺΞτϛοΫσβΠϯ ͱ • ͳΜͰಋೖͯ͠Έͨͷʁ • ͲΜͳײ͡Ͱಋೖͨ͠ͷʁ • ಋೖͯ͠ΈͯͲΜͳײ͡ʁ
Slide 18
Slide 18 text
എܠ • ϏδωεϩδοΫ͕ͦ͜·ͰෳࡶͰͳ͍ • ͱΓ͋͑ͣࠓՁΛग़͢͜ͱ͕େࣄ
Slide 19
Slide 19 text
Βͳ͔ͬͨ͜ͱ • ValueObjectͷશద༻ ->Ϗδωεϧʔϧ͕ෳࡶͰͳ͘ݫີ͞ٻΊΒΕͳ ͔ͬͨ • શͳϑϨʔϜϫʔΫͷඇґଘ ->CollectionCarbonͳͲͷศརΫϥεڐ༰ • શίϯϙʔωϯτʹΞτϛοΫσβΠϯΛద༻͠ͳ͍ ->අ༻ରޮՌɺSEOʢnuxt͑Αʣ
Slide 20
Slide 20 text
ಋೖͷ؊ • ΨνDDDͰͳ͘ɺྑ͍ͱ͜ͲΓ͍ͨ͠ • దͳϨΠϠʔ͚ͱτϥϯβΫγϣϯεΫϦϓτ͔Βͷ٫ • ୯Ұͷపఈ • ޮՌͷߴͦ͏ͳɺ࠶ར༻͢ΔݟࠐΈ͕ߴ͍ίϯϙʔωϯτͷ Έ • ਐతʹਐΊΔ Γ͍͢ͱ͜ΖɺޮՌͷߴ͍ͱ͜Ζ͔Βঃʑʹ
Slide 21
Slide 21 text
agenda • ΫϦʔϯΞʔΩςΫνϟɺΞτϛοΫσβΠϯ ͱ • ͳΜͰಋೖͯ͠Έͨͷʁ • ͲΜͳײ͡Ͱಋೖͨ͠ͷʁ • ಋೖͯ͠ΈͯͲΜͳײ͡ʁ
Slide 22
Slide 22 text
ΫϦʔϯΞʔΩςΫνϟ • ৭ʑলུ͠ա͗ͨ݁Ռɺ͜ΕΫϦʔϯΞʔΩςΫνϟͳͷ ͔ʁͱ͍͏ʹ • υϝΠϯ͋·ΓϩδοΫ͕ͳ͘ɺΫϥε͕ͻͨ͢Βଟ ͍ɻएׯͷΓ͗͢ײɻ ->ෳࡶͳϏδωεϧʔϧ͕ͳ͔͔ͬͨΒ • ϩδοΫ͕υϝΠϯͱϓϨθϯςʔγϣϯʹ͚ΒΕͯ៉ ྷʹͳͬͨʂ ->Ή͠ΖϓϨθϯςʔγϣϯϩδοΫ͕ෳࡶͩͬͨ • ֶशίετؚΊͨॳظίετߴʂ
Slide 23
Slide 23 text
ΞτϛοΫσβΠϯ • ଟݴޠରԠΏ͑ɺͪΐͬͱͨ͠จݴjsonͰ ͞ͳ͚ΕͳΒͳ͍ • ࠶ར༻ੑඇৗʹߴ͘ͳͬͨ • ֶशίετؚΊͨॳظίετߴʂ
Slide 24
Slide 24 text
ͭ·Γ…ࠓޙʹظ
Slide 25
Slide 25 text
·ͱΊ
Slide 26
Slide 26 text
• ݫີͳΫϦʔϯΞʔΩςΫνϟΞτϛοΫσβ ΠϯͰͳ͍ɻ͕ͩͦΕͰेޮՌ͋Γͦ ͏ɻ • ಛʹwebܥ͋·Γ͜ΕΒΛΨοπϦΔ͖γ νϡΤʔγϣϯଟ͘ͳ͍ͷ͔ɻ • खΛൈ͍ͯॳظίετ͔ͳΓେ͖͍ɻ • αʔϏεͷण໋ɺϏδωεϧʔϧͷෳࡶ͞ɺن ɺνʔϜঢ়گͳͲΛΑ͘ߟ͑ͯಋೖΛݕ౼͢ ͠ɻ
Slide 27
Slide 27 text
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠