Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
学生スタートアップがマイクロビューコントローラを導入した話
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
nade
February 15, 2019
Programming
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
学生スタートアップがマイクロビューコントローラを導入した話
Mbile Act Osaka #8
nade
February 15, 2019
More Decks by nade
See All by nade
Server-Driven UI入門: 画面のStateを直接受け取るアプローチ
kazumanagano
5
4.3k
タップルのサービス特性に合わせた設計方針を考える
kazumanagano
0
250
iOS開発におけるGitHub Actions self-hosted runnerを利用したオンプレ CI/CD のすゝめ
kazumanagano
0
160
Github Actions self-hosted runners のすゝめ
kazumanagano
0
570
モバイルアプリのオブザーバビリティを向上させるプラクティス
kazumanagano
8
5.1k
タップル モバイルアプリにE2Eテストが導入されるまでの軌跡
kazumanagano
0
130
よりUXに近いSLI・SLOの運用による可用性の再設計
kazumanagano
4
8.8k
App Size Optimization への挑戦
kazumanagano
1
1.4k
無料トライアル施策のしくじりから学ぶサブスクリプション構成 ベストプラクティス
kazumanagano
2
2.4k
Other Decks in Programming
See All in Programming
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
200
Oxcを導入して開発体験が向上した話
yug1224
4
320
スマートグラスで並列バイブコーディング
hyshu
0
150
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
170
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
120
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.7k
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
160
Agentic UI
manfredsteyer
PRO
0
170
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
260
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
120
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
420
The Curse of the Amulet
leimatthew05
1
13k
How STYLIGHT went responsive
nonsquared
100
6.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
We Have a Design System, Now What?
morganepeng
55
8.2k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
630
Technical Leadership for Architectural Decision Making
baasie
3
420
Typedesign – Prime Four
hannesfritz
42
3.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
Transcript
ֶੜελʔτΞοϓ͕ ϚΠΫϩϏϡʔίϯτϩʔϥ Λಋೖͨ͠ nade( @kazuma_nagano ) Mobile Act OSAKA #8
Kazuma Nagano (nade) @kazuma_nagano NAIST M2 TIMEPACK Inc. CTO
ຊͷςʔϚ ։ൃεϐʔυͱϦϑΝΫλΛཱ྆͢Δ ʹϚΠΫϩΞʔΩςΫνϟઃܭ ׂ͕ͱྑ͔ͬͨ
ͳͥಋೖʹ͍͔ͨͬͨʁ
։ൃϝϯόʔ ΅͘ɿiOSνϣοτσΩϧ ʢ5ʣ CEOɿiOS UI ΠδΕΔ σβΠφɿϓϩάϥϛϯάॳֶऀ
എܠ • ͱʹ͔͘εϐʔυײ͕ཉ͍͠ʢDemoDay·Ͱʹ..) • ֶۀ͕͋ΔͷͰجຊඇಉظ࡞ۀ • εΫϥοϓ & Ϗϧυ
։ൃࢦ • ͱʹ͔͘εϐʔυײ͕ཉ͍͠ʢDemoDay·Ͱʹ..) • ֶۀ͕͋ΔͷͰجຊඇಉظ࡞ۀ • εΫϥοϓ & Ϗϧυ ϝΠϯϩδοΫɿ΅͘
UIͱ෦ػೳɿCEO + σβΠφ
σ β Π φ $ & 0
ϝΠϯϩδοΫ ͤΔͥʂʂ ϨϏϡʔ͢Δͥ ։ൃͷ༷ࢠ 6*ͱ؆୯ͳػೳ ࡞Δͥʂʂ
τοϓը໘ͷ༷ࢠ͕ ͦΖͦΖઃܭɽɽ ޙɽɽ ৽ػೳͱϏϡʔͥ͢ʂ
τοϓը໘ͷ༷ࢠ͕ ͦΖͦΖઃܭɽɽ ޙɽɽ ৽ػೳͱϏϡʔͥ͢ʂ େنͳϦϑΝΫλϦϯά
શ෦ڭ͖͑Εͳ͍ɽɽ ͞Βʹޙɽɽ Μʁ͜ͷઃܭͰ Ͳ͏ͬͯػೳ͢ͷʁ 7JFX.PEFMͬͯԿʂʁ
શ෦ڭ͖͑Εͳ͍ɽɽ ͞Βʹޙɽɽ Μʁ͜ͷઃܭͰ Ͳ͏ͬͯػೳ͢ͷʁ 7JFX.PEFMͬͯԿʂʁ w 6*ΛՃͮ͠Β͘ͳͬͯ͘Δ w ษڧڭҭίετ w
ഭΓདྷΔకΊΓɽɽ
͖ʹ͍͍ͭͬͯ͘Αʂ ͏͋ͱͰશ෦ ͓Ε͕͢Θɽɽ ࠷ऴతʹɽɽ ʁɹʁ
͜͏ͯ͠Fat View Controllerͷ ҋʹତ͍ͪͯ͘ͷͩͬͨ
ͳʹ͕ྑ͘ͳ͔͔ͬͨʁ! • ΞʔΩςΫνϟΛపఈ͢Δʹֶशίετ͕͔͔Δ • ֶश͠ͳ͕ΒίʔυΛॻ͘߹ɺεϐʔυ͕མͪΔ • Ϋϥεؒͷ݁߹͕ਂ͘ͳΔͨΊϦϑΝΫλ͕େม
ͱ͍͑ϚγͳΓํ͋Δͣ
େֶͰڭΘͬͨ͜ͱɽɽ !☁
ڊਓͷݞͷ্ʹͷΔʂ !#
• ࡢͷiOSDCͰ @tarunon͞Μ͕ൃද(ϕετεϐʔΧʔ) • ϑϨʔϜϫʔΫ + Sample͕ެ։ https://github.com/mercari/Mew • UIύʔπͦΕͧΕΛViewControllerͰ࡞ͬͯ͠·͏ΞʔΩς
Ϋνϟ MicroViewController ϝ̋ΧϦࣾͷ
࣮ͷઆ໌Λͪΐͬͱ͚ͩ ৄ͘͠Github
ViewControllerؒͷInterfaceΛϓϩτίϧͰ౷Ұ • Instantiatableɿinit • Injectableɿupdate • Interactableɿdelegate MicroViewController ϝ̋ΧϦࣾͷ
ContainerViewΛ༻͍࣮ͯ MicroViewController ϝ̋ΧϦࣾͷ
MicroViewControllerΛ͏ͱ • ϥΠϑαΠΫϧɾը໘ભҠίʔυׂ͕͞ΕΔ • ϨΠΞτ͕࣌ؒॖ͠ɺύϑΥʔϚϯε͕ ͕͋Δ • ΫϩεΞʔΩςΫνϟͰ࣮Մೳ
ΫϩεΞʔΩςΫνϟ • ը໘ؒͷ݁߹͕ेʹૄͰ͋Ε த͕ԿͰͰ͖ͯͯΑ͍ MVVM MVVM Clean Archi MVC RIBs
Clean Archi MVC RIBs MVVM MVP MVC
ΫϩεΞʔΩςΫνϟ • ը໘ؒͷ݁߹͕ेʹૄͰ͋Ε த͕ԿͰͰ͖ͯͯΑ͍ • Fat ViewControllerͰྑ͍ MVVM MVVM Clean
Archi MVC RIBs Clean Archi MVC RIBs MVVM MVP MVC
ֶੜελʔτΞοϓ͕ MicroViewControllerΛ͏ͱ • શͯͷը໘Λ͖Ε͍ͳίʔυͰ࡞Βͳͯ͘ Α͘ͳΔ • ViewController͕ଠΓͮΒ͘ͳΔ • ଠͬͨը໘͔ΒϦϑΝΫλΛਐΊ͍͚ͯΔ •
ϦϑΝΫλͷӨڹൣғ͕ڱ·ΓΊͬͪΌָʹͳΔ
࣮ࡍͷը໘ߏ
࣮ࡍͷը໘ߏ • φϏήʔγϣϯόʔ • ηϧͷϥϕϧɾΠϝʔδ ʢը໘ભҠ͕ͳ͍ɾύʔπʣҎ֎ શ෦ViewController + Xib
MicroViewControllerͷԸܙ • ։ൃɿ×3 • 1ViewControllerதͷίʔυɿ~500 • ύϑΥʔϚϯε্ͯ͠Δʁ
Thank youʂ