Slide 1

Slide 1 text

೥݄೔ ੢ ຏԧ ϞμϯͳγεςϜߏ੒ΛऔΓೖΕ ଓ͚Δ͜ͱ͕Ͱ͖Δ૊৫࡞Γ

Slide 2

Slide 2 text

ࣗݾ঺հ ໊લ ੢ ຏԧʢʹ͠ ·͓ʣ ࠷ۙͷ࢓ࣄ !NBP@OJTIJ

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

ਐา͢ΔΞʔΩςΫνϟ • .7$ • .71 • .77. • $MFBO "SDIJUFDIUVSF • 'MVY ҰํͰطଘγεςϜͷ ֦ுۀ຿

Slide 9

Slide 9 text

৽͍͠ΞʔΩςΫνϟΛ஌Δ͜ͱ ੈͷதͷ՝୊Λ஌Δνϟϯε • ҋӢͳಋೖ͸ྑ͘ͳ͍ • ͚ͩͲ࣮ફ͠ͳ͍ͱཧղ͕ਂ· Βͳ͍

Slide 10

Slide 10 text

Ϗδωεଆ͔ΒݟΔͱ γεςϜߏ੒͸ม͑ͳ͍બ୒ ҆ఆՔಇ͍ͯ͠Δ͠ɺ೥ʑֶशίετ΋Լ͕Δ

Slide 11

Slide 11 text

ٕज़ϩοΫΠϯ ͯ͠͠·͏যΓ

Slide 12

Slide 12 text

ཧ૝ͷ͔ͨͪ • ΞϓϦͷ੒௕ʹ͋Θͤͨγες Ϝߏ੒ݟ௚͠ • ͔͠΋ϏδωεΛࢭΊͣʹ

Slide 13

Slide 13 text

• ٕज़Ξϓϩʔν • ૊৫Ξϓϩʔν ྆ํ͕ඞཁ Ͳ͏͢Δʁ

Slide 14

Slide 14 text

ͨͲΓண͍ͨਅཧͷڞ༗ • ೥ϦϦʔεͷΞϓϦ • Λ௒͑Δ4UPSZCPBE • Λ௒͑ΔιʔεϑΝΠϧ

Slide 15

Slide 15 text

ٕज़Ξϓϩʔν

Slide 16

Slide 16 text

ٕज़Ξϓϩʔν • ৽͍͠ΞʔΩςΫνϟΛࢼ͢ • プロトタイプで試す • ここはまずやりましょう ·ͣ͸খ͘͞΍ͬͯΈΔ

Slide 17

Slide 17 text

ίϯύΠϧ଎౓͕େࣄ • ͳͥʁ • 未知なことをやるから • あーでもないこーでもないがおきる • 開発のリズムが崩れる

Slide 18

Slide 18 text

πʔϧͰܭଌ #VJME5JNF"OBMZ[FSGPS9DPEF • Ϋϥεɺؔ਺୯ҐͰ଎౓͕෼͔Δ

Slide 19

Slide 19 text

଎౓վળύλʔϯͷྫ • ԋࢉࢠͷॲཧΛݮΒ͢ʢT୹ॖʣ • もちろん遅くなっているところだけでいい • ഑ྻͷ௚઀௥ՃΛݮΒ͢ʢT୹ॖʣ • ArrayOfStuff + [Stuff] → ArrayOfStuff.append(stuff) • ࡾ߲ԋࢉࢠΛݮΒ͢ʢT୹ॖʣ • 遅くなっているところだけ

Slide 20

Slide 20 text

·Ί஌ࣝ ίϯύΠϧ଎౓͕ ஗͍ͱϫʔχϯά Λݟͯݟ͵;Γ͢ Δ͜ͱ΋͋Δ

Slide 21

Slide 21 text

ΑΓ଎͘ίϯύΠϧ ͢ΔͨΊʹ

Slide 22

Slide 22 text

γεςϜΛ෼ׂ͢Δ • ͳͥʁ • プリビルドができる • 脳のコンパイル速度もあがる • ここから先はシステムが別 • 毎回の全体コンパイルを避ける • CDがより高速に

Slide 23

Slide 23 text

ΞϯϒϨϥπϦʔ ϝϦοτɿࢹ֮తʹ͍ۙ৔ॴʹ഑ஔͰ͖Δ

Slide 24

Slide 24 text

%ZOBNJD'SBNFXPSL ϝϦοτɿকདྷతʹผ3FQPʹ੾Γग़͠΍͍͢

Slide 25

Slide 25 text

%'SBNFXPSLΛผ3FQPʹ ϝϦοτɿผϓϩδΣΫτʹڞ༗ɺϓϦϏϧυ΋Մ

Slide 26

Slide 26 text

෼ׂ͢Δͱʁ Ұ෦ͷػೳͷγεςϜߏ੒Λมߋ ͢Δ͜ͱ͕Ͱ͖Δ MVC MVVM

Slide 27

Slide 27 text

%'SBNFXPSLຖͷઃܭ 画面名 設計 解決したかった 課題 トップ MVVM Viewの更新タイミングを統一した い 商品詳細 コードベースの 画面設計 Storyboardマージしたくない、UIの テストコードを書きやすくしたい その他 MVC よく知られている構成で、新規メ ンバ参画を容易に

Slide 28

Slide 28 text

΋ͪΖΜ՝୊΋ γεςϜ͕ෳࡶԽ͢ΔͷͰ͸ʁ • ͦͷ௨Γ • しかし、システム全刷新の選択は 容易ではない • ࣮຿ܦݧ͕࠷దղΛ୳ͨ͢Ίͷ ݂ͱͳΓ೑ͱͳΔ

Slide 29

Slide 29 text

૊৫Ξϓϩʔν

Slide 30

Slide 30 text

Α͍૊৫ɺνʔϜ ੒௕ʹ͸Կ͕ඞཁʁ • ৽͍͠ߟ͑ํΛऔΓೖΕΔ؀ڥ • 一方的な知識のインプット? • さてどうやる?

Slide 31

Slide 31 text

࣮ࡍͲ͏΍͍ͬͯΔʁ 91ͰϖΞͷ૬खΛຖ೔ϩʔςʔγϣϯ͠ͳ͕Β

Slide 32

Slide 32 text

͍͍͜ͱ͸ʁ • ࿩͠ͳ͕Βઃܭ • ޓ͍ͷ஌ࣝަ׵ • ʮͳͥͦ͏ߟ͑ ͨͷ͔ʁʯͱ͍ ͏ίʔνϯά • ଐਓԽղফ

Slide 33

Slide 33 text

͞Βʹ͸ʁ • ҰਓΑΓ΋ೋਓ Ͱߟ͑ͨ΋ͷͷ ํ͕ࣗ৴͕ग़Δ • ࣗ෼ͨͪͰܾΊ Δɺͱ͍͏ҙࢥ ܾఆܦݧ

Slide 34

Slide 34 text

ଞͷ޻෉͸ʁ ୎ٿͰ೴ͷϦϑϨογϡɻϖΞͱͷ࿈ܞྗ޲্΋

Slide 35

Slide 35 text

ଞͷ޻෉͸ʁ ࢒ۀېࢭ ʢ؅ཧ৬͸ͪΐͬͱ͚ͩ஗͍ʣ

Slide 36

Slide 36 text

ͦͷ݁Ռ͓͖ͨ͜ͱ • ࢒ۀ͕ݮͬͨ • ペアプロは疲れるのもある • 新しいことに時間を使える • ҙݟަ׵͕׆ൃʹ • ϏδωεΛࢭΊͳ͍γεςϜมߋ

Slide 37

Slide 37 text

·ͱΊ ٕज़Ξϓϩʔν • ଎͘͢Δ͜ͱΛ௥ٻ ૊৫Ξϓϩʔν • ձ࿩Λ૿΍͢޻෉ • ҰਓΑΓ΋ೋਓͷߟ͑

Slide 38

Slide 38 text

଎͋͘Γଓ͚Δ͜ͱ Ϟμϯ΁ͷۙಓ