Slide 1

Slide 1 text

՝୊ײ͔Β࢝ΊΔ Ϋϥεઃܭͱ߹ҙܗ੒ Bonfire Android #3

Slide 2

Slide 2 text

ࣗݾ঺հ • @kirimin • AnyPayגࣜձࣾ ॴଐ • AndroidΤϯδχΞ • όʔνϟϧϢʔνϡʔόʔ • React-NativeΤϯδχΞ

Slide 3

Slide 3 text

ฐࣾͷϓϩμΫτ

Slide 4

Slide 4 text

ࠓ೔ͷςʔϚ ʮαʔϏεͱઃܭʯ

Slide 5

Slide 5 text

ઃܭɺߟ͑ͯ·͔͢ʁ

Slide 6

Slide 6 text

ʲΞϯέʔτʳઃܭʹ͍ͭͯ • ͕ͬͪΓΫϥεߏ੒ΛܾΊͯӡ༻͍ͯ͠Δ

Slide 7

Slide 7 text

ʲΞϯέʔτʳઃܭʹ͍ͭͯ • ͕ͬͪΓΫϥεߏ੒ΛܾΊͯӡ༻͍ͯ͠Δ • ωοτϫʔΫ·ΘΓͱ͔ج൫ͷ෦෼ͷΫϥε ߏ੒͚ܾͩΊͯ͋ͱ͸࣮૷ऀ࣍ୈ

Slide 8

Slide 8 text

ʲΞϯέʔτʳઃܭʹ͍ͭͯ • ͕ͬͪΓΫϥεߏ੒ΛܾΊͯӡ༻͍ͯ͠Δ • ωοτϫʔΫ·ΘΓͱ͔ج൫ͷ෦෼ͷΫϥε ߏ੒͚ܾͩΊͯ͋ͱ͸࣮૷ऀ࣍ୈ • શવΘ͔Βͳ͍ɻԶͨͪ͸งғؾͰΦϒδΣ Ϋτࢦ޲Λ΍͍ͬͯΔ

Slide 9

Slide 9 text

͍Ζ͍Ζͳઃܭύλʔϯ .71 .7$ .77. ""$ 'MVY 3FEVY

Slide 10

Slide 10 text

ͳΜͰઃܭΛߟ͑Δඞཁ͕ ͋ΔΜͩΖ͏

Slide 11

Slide 11 text

ͦ͜ʹ՝୊͕͋Δ͔Β

Slide 12

Slide 12 text

͑Β͍ͻͱʮMVP͕ΠέͯΔ Β͍͔͠Βɺ࣍ͷΞϓϦ͸ MVPͰ΍ͬͯͶʯ

Slide 13

Slide 13 text

·ΕʹΑ͋͘Δޫܠ • ͑Β͍ͻͱʮMVP͕ΠέͯΔΒ͍͔͠Βɺ࣍ͷ ΞϓϦ͸MVPͰ࡞ͬͯࣗಈςετΛಋೖͶʯ

Slide 14

Slide 14 text

·ΕʹΑ͋͘Δޫܠ • ͑Β͍ͻͱʮMVP͕ΠέͯΔΒ͍͔͠Βɺ࣍ͷ ΞϓϦ͸MVPͰ࡞ͬͯࣗಈςετΛಋೖͶʯ • ϝϯόʔʮͳΜͰ͜Μͳ໘౗ͳॻ͖ํ͠ͳ͍ͱ ͍͚ͳ͍Μͩ...ʯʮԿ͕ਖ਼͍͠ͷ͔෼͔Βͳ ͍...ʯ

Slide 15

Slide 15 text

·ΕʹΑ͋͘Δޫܠ • ͑Β͍ͻͱʮMVP͕ΠέͯΔΒ͍͔͠Βɺ࣍ͷ ΞϓϦ͸MVPͰ࡞ͬͯࣗಈςετΛಋೖͶʯ • ϝϯόʔʮͳΜͰ͜Μͳ໘౗ͳॻ͖ํ͠ͳ͍ͱ͍ ͚ͳ͍Μͩ...ʯʮԿ͕ਖ਼͍͠ͷ͔෼͔Βͳ͍...ʯ • ՝୊ײ͕ೝࣝग़དྷ͍ͯͳ͍ͷʹઃܭͱݴΘΕͯ΋ ϝϦοτΛ࣮ײ͢Δͷ͸Ή͔͍ͣ͠

Slide 16

Slide 16 text

શવΘ͔Βͳ͍ɻ Զͨͪ͸งғؾͰྲྀߦΓͷ ઃܭΛ΍͍ͬͯΔ

Slide 17

Slide 17 text

ରࡦ

Slide 18

Slide 18 text

1.νʔϜͱͯ͠ग़དྷΔ͜ͱ

Slide 19

Slide 19 text

ࠓͷϓϩδΣΫτͷ՝୊Λ ચ͍ग़͢ • Ͳ͜ʹͲΜͳॲཧ͕ॻ͔Ε͍ͯΔͷ͔෼͔Βͳ ͍ • ৽͍͠ॲཧΛͲ͜ʹॻ͚͹͍͍ͷ͔෼͔Βͳ͍ • ঢ়ଶ͕ແବʹෳࡶͰෆ޾ͳόά͕ࠞೖ͕ͪ͠ • ίʔυ͕ಡΈʹ͘͘վमίετ͕ߴ͍

Slide 20

Slide 20 text

ࠓ͋Δ՝୊ΛղܾͰ͖ͦ͏ͳύ λʔϯΛಋೖ͠Α͏ • ٯʹ՝୊͕ಛʹແ͚Ε͹ແཧʹΧοίΠΠઃܭύλʔ ϯΛ࢖Θͳͯ͘΋͍͍ • ࢥ૝తʹਖ਼͍͠ΨονϦͨ͠ઃܭ͕ৗʹ༏Ε͍ͯΔ ͱ͸ݶΒͳ͍ɹ(શͯͷΫϥεΛinterfaceԽ͢Δͳ Ͳ) • ͨͩ͠ɺকདྷతͳ՝୊͕༧ݟग़དྷ͍͍ͯͯΔͳΒ࠷ ॳ͔ΒΨονϦ૊Ήͷ͸ѱ͘ͳ͍

Slide 21

Slide 21 text

ݸਓతʹ࠷௿ݶܾΊ͓͍ͯͨํ ͕Αͦ͞͏ͳ͜ͱ • ࢖͏ϥΠϒϥϦͱ࢖͍ํ • DataBinding/RxJava/Retrofit/EventBus/etc... • σʔλΞΫηεॲཧͷݺͼग़͠ํ • View͔ΒݺͿ/Ϟσϧ͔ΒݺͿ/RepositoryతͳͷΛ࡞Δ/࡞Β ͳ͍ • ϏδωεϩδοΫΛॻ͘৔ॴ • ϞσϧΫϥεͬΆ͍΋ͷ͕͍ΖΜͳύοέʔδʹࢄΒ͹Γ͕ͪ

Slide 22

Slide 22 text

2.։ൃऀݸਓͱͯ͠ Ͱ͖Δ͜ͱ

Slide 23

Slide 23 text

࣮૷࣌ͷ͋Γ͕ͪͳ՝୊Λ஌Δ • Φεεϝͳͷ͸ݸਓͰ0͔ΒΞϓϦΛ࡞ͬͯΈΔ͜ͱ • ͦͦ͜͜ͷػೳΛ࣋ͬͨΞϓϦΛҰਓͰ࡞ΓɺԿ౓΋ػೳ վળͷΞοϓσʔτΛ͍ͯ͘͠ • ͍Ζ͍Ζͳ՝୊͕ݟ͑ͯ͘Δ • ྑ͔Εͱࢥͬͨઃܭ͕ͭΒΈΛੜΉͳͲͷ஌ݟ͕ಘΒΕΔ • ઃܭʹࣦഊͨ͠ܦݧ͸Ұੜͷࡒ࢈

Slide 24

Slide 24 text

ཧ૝ • νʔϜʮ͜͏͍͏՝୊͕͋Δ͔Β͜ͷઃܭΛ ಋೖ͠Α͏ʯ • ϝϯόʔʮΘ͔Δʯ

Slide 25

Slide 25 text

͡Ό࣮͋ࡍʹͲ͏΍ͬͯಋೖ ͢Δͷʁ

Slide 26

Slide 26 text

paymoͰͷྫ

Slide 27

Slide 27 text

ఏҊ͢Δ • ॳظͷ࣮૷͸͍Ζ͍Ζͳ՝୊͕͋Δઃܭͩͬͨɹ (DroidKaigiͰͷൃදɺHow to improve your architecture and testsΛࢀর) • ·ͣ͸ேձ΍SlackͳͲͰ՝୊ײͱ΍Γ͍ͨ͜ͱΛप஌͢Δ • GitHubʹIssueΛཱͯΔ • จষϕʔεͰํ޲ੑʹ͍ͭͯٞ࿦͠νʔϜ಺Ͱ߹ҙ͢Δ

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

۩ମҊΛݟͤΔ • αϯϓϧͱͯ͠ҰՕॴʹద༻͍ͨ͠ઃܭΛద༻͠ ͨϒϥϯνΛ࡞ΓɺPRΛग़͢ • ίʔυʹରͯ͠ϝϯόʔ͔Β޿͘ποίϛΛืΔ • ίʔυϕʔεͰߋʹٞ࿦͢Δ • ApproveΛ΋Β͍߹ҙͷҙࢥΛ໌֬ʹ֬ೝ͢Δ

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

ϦϑΝΫλΛ࣮ࢪ͢Δ • ৽࣮͘͠૷͢ΔՕॴ͸৽͍͠ઃܭʹ߹ΘͤΔ • ݹ͍Օॴ͸εέδϡʔϧͳͲͱ૬ஊ͠ͳ͕Β ॱ࣍ॻ͖׵͍͑ͯ͘

Slide 34

Slide 34 text

େࣄͳ͜ͱ • ҰਓͰಥͬ૸Βͳ͍ • ৽͍͠ઃܭ͕ϝϯόʔײͰे෼ʹप஌͞Ε͍ͯͳ ͔ͬͨΓɺҙࣝ߹Θ͕ͤग़དྷ͍ͯͳ͍ͱɺ࣮૷ऀ ʹΑͬͯνάϋάʹͳͬͨΓɺετϨεͷݪҼʹ ͳΔ • ઃܭͷର৅͸ϓϩάϥϜ͕ͩɺେࣄͳͷ͸ਖ਼͍͠ ՝୊ͷೝࣝͱίϛϡχέʔγϣϯ

Slide 35

Slide 35 text

ઈର͋͠Θͤͳ ։ൃݱ৔ʹ͠Α͏ͳ

Slide 36

Slide 36 text

͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠