Upgrade to Pro — share decks privately, control downloads, hide ads and more …

プロダクトの進化に
合わせた iOS アプリ開発

Avatar for Takuji Kaneko Takuji Kaneko
February 16, 2017

プロダクトの進化に
合わせた iOS アプリ開発

Sansan tech meetup #1 モバイルアプリ編 の発表資料です!

Avatar for Takuji Kaneko

Takuji Kaneko

February 16, 2017

Other Decks in Technology

Transcript

  1. Eight • ໊ࢗΞϓϦ • ໊ࢗ؅ཧΞϓϦ • SNS + ໊ࢗ؅ཧ •

    2013೥ iOS ΞϓϦϦϦʔε • ࠓ೥Ͱ 5 ೥໨
  2. Eight ͷྺ࢙ • 2013 ೥ iOSΞϓϦϦϦʔε (໊ࢗ؅ཧ)
 • 2014 ೥


    • 2015 ೥
 ϑΟʔυػೳ௥Ճ (໊ࢗ؅ཧ + SNS) • 2016 ೥
 • 2017೥ શը໘࡮৽ (SNS + ໊ࢗ؅ཧ) Objectiv-C, SQLite
  3. Eight ͷྺ࢙ • 2013 ೥ iOSΞϓϦϦϦʔε (໊ࢗ؅ཧ)
 • 2014 ೥


    • 2015 ೥
 ϑΟʔυػೳ௥Ճ (໊ࢗ؅ཧ + SNS) • 2016 ೥
 • 2017೥ શը໘࡮৽ (SNS + ໊ࢗ؅ཧ) Objectiv-C, SQLite Objectiv-C + Swift, SQLite + Realm W $VSSFOU7FSTJPO
  4. Eight ͷྺ࢙ • 2013 ೥ iOSΞϓϦϦϦʔε (໊ࢗ؅ཧ)
 • 2014 ೥


    • 2015 ೥
 ϑΟʔυػೳ௥Ճ (໊ࢗ؅ཧ + SNS) • 2016 ೥
 • 2017೥ શը໘࡮৽ (SNS + ໊ࢗ؅ཧ) Objectiv-C, SQLite Swift + Objectiv-C, Realm + SQLite, RxSwift Objectiv-C + Swift, SQLite + Realm
  5. ମ੍ͷมԽ • 2013 ೥ • 2014 ೥ • 2015 ೥

    • 2016 ೥ • 2017೥ ಺੡Խ ϝΠϯΤϯδχΞ 1໊ ϝΠϯΤϯδχΞ 2໊
  6. ମ੍ͷมԽ • 2013 ೥ • 2014 ೥ • 2015 ೥

    • 2016 ೥ • 2017೥ ಺੡Խ ϝΠϯΤϯδχΞ 1໊ ϝΠϯΤϯδχΞ 2໊ 2ਓ͍Δͱ ίʔυϨϏϡʔ ઃܭ૬ஊ Ͱ͖ͯྑ͍…
  7. ໊ࢗ؅ཧ࣌୅(աڈ)ͷ Eight • MVC ϕʔεͷઃܭ • ѻ͏৘ใ͸੩తͳͷͰ ViewController ͷ
 ϥΠϑαΠΫϧͰ

    Model Λऔಘ͢Ε͹े෼ • ಈతͳ৘ใ͕૿͑ΔʹͭΕ
 Model ͷঢ়ଶ؅ཧͷॏཁੑ͕ߴ·͍ͬͯͬͨ
  8. ໊ࢗ؅ཧ࣌୅(աڈ)ͷ Eight • MVC ϕʔεͷઃܭ • ѻ͏৘ใ͸੩తͳͷͰ ViewController ͷ
 ϥΠϑαΠΫϧͰ

    Model Λऔಘ͢Ε͹े෼ • ಈతͳ৘ใ͕૿͑ΔʹͭΕ
 Model ͷঢ়ଶ؅ཧͷॏཁੑ͕ߴ·͍ͬͯͬͨ
  9. Realm ͷಋೖ • Realm • ϞόΠϧ޲͚ DB • σʔλߋ৽͕ѻ͍΍͍͢ •

    Ϋϥεઃܭ = DB ઃܭ • ΞΫηε଎౓͕ߴ଎
  10. Realm ͷಋೖ • Realm • ϞόΠϧ޲͚ DB • σʔλߋ৽͕ѻ͍΍͍͢ •

    Ϋϥεઃܭ = DB ઃܭ • ΞΫηε଎౓͕ߴ଎
  11. SNS࣌୅(ࠓ)ͷ Eight • MVVM (Model-View-ViewModel) ϕʔε ViewModel Model όΠϯσΟϯά อ࣋

    อ࣋ ߋ৽ͷ؂ࢹ ԿΛදࣔ͢Δ͔ͷ
 ϩδοΫ ϏδωεϩδοΫ
 σʔλ UI View/
 ViewController
  12. SNS࣌୅(ࠓ)ͷ Eight • MVVM (Model-View-ViewModel) ϕʔε ViewModel Model όΠϯσΟϯά อ࣋

    อ࣋ ߋ৽ͷ؂ࢹ ԿΛදࣔ͢Δ͔ͷ
 ϩδοΫ ϏδωεϩδοΫ
 σʔλ UI View/
 ViewController RxSwift Realm
  13. ϝοηʔδͷྫ • Model (Realm Ͱఆٛ) • TalkRoom • ϝοηʔδͷ৘ใ •

    ձ࿩಺༰ɺ౤ߘ࣌ؒͳͲ • View • TalkRoomListCell • ViewModel • TalkRoomListViewModel • Ͳ͔͜Ͱߋ৽͞ΕΔ TalkRoom ͷঢ়ଶΛ
 TalkRoomListCell ʹද͍ࣔͨ͠
  14. ϝοηʔδͷྫ • Model (Realm Ͱఆٛ) • TalkRoom • ϝοηʔδͷ৘ใ •

    ձ࿩಺༰ɺ౤ߘ࣌ؒͳͲ • View • TalkRoomListCell • ViewModel • TalkRoomListViewModel • Ͳ͔͜Ͱߋ৽͞ΕΔ TalkRoom ͷঢ়ଶΛ
 TalkRoomListCell ʹද͍ࣔͨ͠
  15. ϝοηʔδͷྫ • Model (Realm Ͱఆٛ) • TalkRoom • ϝοηʔδͷ৘ใ •

    ձ࿩಺༰ɺ౤ߘ࣌ؒͳͲ • View • TalkRoomListCell • ViewModel • TalkRoomListViewModel • Ͳ͔͜Ͱߋ৽͞ΕΔ TalkRoom ͷঢ়ଶΛ
 TalkRoomListCell ʹද͍ࣔͨ͠
  16. ϝοηʔδͷྫ • Model (Realm Ͱఆٛ) • TalkRoom • ϝοηʔδͷ৘ใ •

    ձ࿩಺༰ɺ౤ߘ࣌ؒͳͲ • View • TalkRoomListCell • ViewModel • TalkRoomListViewModel • Ͳ͔͜Ͱߋ৽͞ΕΔ TalkRoom ͷঢ়ଶΛ
 TalkRoomListCell ʹද͍ࣔͨ͠
  17. ಋೖͷಓͷΓ • 2013 ೥ iOSΞϓϦϦϦʔε (໊ࢗ؅ཧ)
 • 2014 ೥
 •

    2015 ೥
 ϑΟʔυػೳ௥Ճ (໊ࢗ؅ཧ + SNS) • 2016 ೥
 • 2017೥ શը໘࡮৽ (SNS + ໊ࢗ؅ཧ) Objectiv-C, SQLite Swift + Objectiv-C, Realm + SQLite, RxSwift Objectiv-C + Swift, SQLite + Realm
  18. ಋೖͷಓͷΓ • 2013 ೥ iOSΞϓϦϦϦʔε (໊ࢗ؅ཧ)
 • 2014 ೥
 •

    2015 ೥
 ϑΟʔυػೳ௥Ճ (໊ࢗ؅ཧ + SNS) • 2016 ೥
 • 2017೥ શը໘࡮৽ (SNS + ໊ࢗ؅ཧ) Objectiv-C, SQLite Swift + Objectiv-C, Realm + SQLite, RxSwift Objectiv-C + Swift, SQLite + Realm χϡʔεػೳͰઌߦಋೖ ϓϩϑΟʔϧฤूػೳͰઌߦಋೖ
  19. ಋೖͷಓͷΓ • 2013 ೥ iOSΞϓϦϦϦʔε (໊ࢗ؅ཧ)
 • 2014 ೥
 •

    2015 ೥
 ϑΟʔυػೳ௥Ճ (໊ࢗ؅ཧ + SNS) • 2016 ೥
 • 2017೥ શը໘࡮৽ (SNS + ໊ࢗ؅ཧ) Objectiv-C, SQLite Swift + Objectiv-C, Realm + SQLite, RxSwift Objectiv-C + Swift, SQLite + Realm χϡʔεػೳͰઌߦಋೖ ϓϩϑΟʔϧฤूػೳͰઌߦಋೖ খ͘͞ಠཱͨ͠ػೳͰ ࢼ͔ͯ͠Βɺ֦େ
  20. ·ͱΊ • ϓϩμΫτͷਐԽʹ߹Θͤͯ
 ઃܭɺϥΠϒϥϦΛม͍͑ͯͬͨ • MVVM, Realm + RxSwift •

    ৽͍͠ϥΠϒϥϦΛಋೖ͢Δͱ͖͸
 খ͞ͳػೳͰࢼ͔ͯ͠ΒൣғΛ޿͛ͨ