DroidKaigi2018 2018/2/8 16:50~17:20 ROOM3
GithubURL:https://github.com/kiuchikeisuke/Android-Studio-CleanArchitecture-template-forKotlin
,PUMJO൛$MFBO"SDIJUFDUVSFͷςϯϓϨʔτ࡞ͬͨΒര։ൃʹͳͬͨʴЋLFJTVLFLJVDIJ!%SPJE,BJHJ
View Slide
• ࢿྉɾಈըެ։༗• ࣸਅࡱӨ˚ ͨͩ͠Ի߇͑Ίʹ• ࣮گɺ0,Ͱ͢ESPJELBJHJ@SPPN
͜ͷൃදͷओͳରऀw $MFBO"SDIJUFDUVSFͬͯฉ͍ͨࣄ͋Δ͚Ͳ ͬͯΈ͍ͨਓ ͬͯΈ͚ͨͲ࣮͕૿͑ͯਏ͍ͱࢥͬͨਓ ͬͯΈ͚ͨͲ%*ͷ࣮͕ਏ͍ͱࢥͬͨਓw தɾظతʹ։ൃ͢ΔΞϓϦʹܞΘΔਓ
,FJTVLF,JVDIJw ৬ۀɿ"OESPJEΤϯδχΞ݉ҭࣇύύw झຯͰ࡞ͬͨΞϓϦɿʮΒ͘ͰΜʯw Ϟοτʔɿ໌ͷࣗʹ༏͍͠ίʔυΛॻ͘w 4/4 5XJUUFS!GFJ@LPNF (JUIVC!LJVDIJLFJTVLF 2JJUB!L@LFJTVLF
࠷ۙͷΞΫςΟϏςΟ
"HFOEBw ͜ͷൃදͰಘΒΕΔޮೳw ͳͥ$MFBO"SDIJUFDUVSFΛ͏ͷ͔w $MFBO"SDIJUFDUVSFY5FNQMBUFJO,PUMJOw ·ͱΊ
͜ͷൃදͰಘΒΕΔޮೳ˞ޮՌʹݸਓ͕ࠩ͋Γ·͢
ޮೳw $MFBO"SDIJUFDUVSFʹ͍ͭͯΕ·͢w ։ൃ͕ഒʹͳΓ·͢w ίʔυΛվม͢Δ͜ͱͷسආײ͕ബΕ·͢w ٸͳ༷มߋʹ৺Ժ͔Ͱ͍ΒΕ·͢
ͳͥ$MFBO"SDIJUFDUVSFΛ͏ͷ͔8IZ)PX8IBU$MFBO"SDIJUFDUVSFࢀߟIUUQTUIMJHIUDPNCMPHVODMFCPCUIFDMFBOBSDIJUFDUVSFIUNM
ࣗͷॻ͍ͨίʔυɺޙʹݟͯ͠ଈमਖ਼Ͱ͖·͔͢ʁࣗͷॻ͍ͨίʔυɺ ଞͷਓ͕͙͢ಡΊ·͔͢ʁ
ΞϓϦ։ൃͷظঢ়w ॲཧ͕͑ͳ͍ཧղग़དྷͳ͍ˠՄಡੑͷԼw ڊେͳ"DUJWJUZ'SBHNFOUˠΫϥεͷංେԽw Ϋϥεؒͷີ݁߹ˠݟ͑ͳ͍Өڹൣғ
$MFBO"SDIJUFDUVSFظঢ়Λ༧͢Δ
$MFBO"SDIJUFDUVSFશମਤࢀߟIUUQTRJJUBDPNLPVUBMPVJUFNTBGDGBEFDED
1SFTFOUBUJPOw 7JFXɿ"DUJWJUZ 'SBHNFOU w 1SFTFOUFS%PNBJOͱͷ૭ޱ
%PNBJOw 6TF$BTF1SFTFOUBUJPOʹఏڙ͢Δػೳw 5SBOTMBUFS.PEFM%BUB͔ΒͷσʔλΛ1SFTFOUBUJPOͰѻ͑ΔΑ͏ʹՃ͢Δ
IUUQTTQFBLFSEFDLDPNDIFFTFTBOENWWNCFTVUPQVSBLVUFJTV
ͦͷϩδοΫͷҙຯΛ Ϗδωε෦ʹ͍ͬͯͯ΄͍͠ :FTˠ6TF$BTF /Pˠ1SFTFOUFS1SFTFOUFS PS6TF$BTF
%BUBw %BUB4UPSF %#"1*ʹଓ͠&OUJUZΛಘΔw 3FQPTJUPSZ%PNBJOͷΠϯλϑΣʔε
࣮ࡍʹαϯϓϧιʔεΛ ݟͯΈΔw ϘλϯΛԡͨ͠Β5FYU͕มΘΔαϯϓϧIUUQTHJUIVCDPNLJVDIJLFJTVLF"OESPJE4UVEJP$MFBO"SDIJUFDUVSFUFNQMBUFGPS,PUMJOUSFFNBTUFS&YBNQMF
ͱ͜ΖͰɺؾ͖ͮ·͔ͨ͠ʁ Ϋϥε͕ҟৗʹଟ͍ࣄʹ
$MFBO"SDIJUFDUVSFͷ·ͱΊw 1SFTFOUBUJPOɺ%PNBJOɺ%BUBʹཧ͞ΕɺॲཧͷྲྀΕ͕̍ํʹͳΔˠՄಡੑ্w తผʹΫϥεׂ͞ΕΔˠංେԽͷࢭw ֤ϨΠϠʔຖ͕ૄ݁߹ͳ࣮ˠ໌֬ͳӨڹൣғw େྔͷΫϥεΛ࡞Δˠ։ൃͷԼ
େྔͷΫϥεੜΛ ࣗಈԽͰ͖Δɻ ͦ͏ɺ5FNQMBUFͳΒͶ
w $MFBO"SDIJUFDUVSFY5FNQMBUFJO,PUMJOΫϥε࡞Ұखؒͩɻຊʹɻ
5FNQMBUF͕αϙʔτ͢Δ ओཁϥΠϒϥϦw 3FUSPpUw 3FBMNw 4XBHHFS w %BHHFS Yw 3Y+BWB
Πϯετʔϧw (JUIVC͔ΒϓϩδΣΫτΛΫϩʔϯ ˞ IUUQTHJUIVCDPNLJVDIJLFJTVLF"OESPJE4UVEJP$MFBO"SDIJUFDUVSFUFNQMBUFGPS,PUMJOw JOTUBMMTIΛ࣮ߦw "OESPJE4UVEJPΛ࠶ىಈ※ɿhttps://github.com/android10/Android-CleanArchitecture
ϕʔεΫϥεΛੜ ৽ن1SK
ϕʔεΫϥεΛੜ طଘ1SK
BQQCVJMEHSBEMFΛ͢ݪҼ͕ղΔਓ13Λ ͍ͩ͘͞
֤-BZFSΛੜ
࣮ࡍʹͬͯΈΔ
5FNQMBUFͰมΘΔ։ൃw ໘ͳΫϥε܈࡞͕̍ͰՄೳw ҰॠͰ࡞ग़དྷΔͷͰ؆୯ʹमਖ਼ɾഁغग़དྷΔw 4XBHHFSαϙʔτͳͷͰ"1*ै͕ࣗಈw 3Y+BWB,PUMJOͳͷͰγϯϓϧͳهࡌʹग़དྷΔ
5FNQMBUFͰಘΒΕͨʴЋw %BHHFSͷΠϥΠϥ͕ܹݮw 6*ը໘ͷ࣮%PNBJOͷઃܭʹ࣌ؒΛଟׂ͚͘ΔΑ͏ʹͳͬͨw Ҿ͖ܧ͗ίετ͕΄΅̌ʹ
·ͱΊw $MFBO"SDIJUFDUVSFΞϓϦ։ൃͷظঢ়Λ༧Ͱ͖Δw $MFBO"SDIJUFDUVSFΫϥε࡞͕େมw 5FNQMBUF͑େมͳΫϥε࡞ΛࣗಈԽ
$MFBO"SDIJUFDUVSF5FNQMBUF͍͍ͧ