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
Storyboardを積極的に使うべきか?その役割に基づく一考察
Search
gaussbeam
June 26, 2017
Programming
1
1.9k
Storyboardを積極的に使うべきか?その役割に基づく一考察
2017.06.23 iOS UI実装勉強会 @ Sansan
gaussbeam
June 26, 2017
Tweet
Share
More Decks by gaussbeam
See All by gaussbeam
成長する組織のナレッジベースのつくりかた_知識基盤のデザインとメタデザイン
gaussbeam
0
870
CI/CDと継続的ワークフロー改善
gaussbeam
2
2.2k
(UI)Switch は つくれる
gaussbeam
1
660
Human Interface Guidelinesから滲み出る限界感を考える
gaussbeam
5
3.9k
ローカライズの苦しみに立ち向かう
gaussbeam
1
620
IdentifiableUIKit
gaussbeam
1
440
Other Decks in Programming
See All in Programming
Lottieアニメーションをカスタマイズしてみた
tahia910
0
120
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
41
15k
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
550
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
210
2024年のWebフロントエンドのふりかえりと2025年
sakito
1
230
GitHub Actions × RAGでコードレビューの検証の結果
sho_000
0
240
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
10
1.8k
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
4
1.3k
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
AHC041解説
terryu16
0
590
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
4
370
Domain-Driven Transformation
hschwentner
2
1.9k
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
For a Future-Friendly Web
brad_frost
176
9.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Embracing the Ebb and Flow
colly
84
4.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Optimizing for Happiness
mojombo
376
70k
Transcript
StoryboardΛੵۃతʹ͏͖͔ʁ ʙͦͷׂʹجͮ͘Ұߟʙ IBOZV!4BOTBO *OD 2017.06.23 #iOS_UI࣮ษڧձ
Who? • HANYU, Koji • Sansan, Inc. iOS Developer •
2017/3~
Storyboardͷ̎ͭͷׂ w ετʔϦʔϘʔυ • Interface Builder
func chooseUiDevelopMethod(when situation: Situation) -> UIDevelopMethod { switch situation {
case .developScreenTransition, .developSimpleView: return .byStoryboard case .developComplexView, .developLooksLikeOtherPlatformUI: return .byNibFilesAndCodess } }
case .developScreenTransition
DetailView
• ϝϦοτ • ը໘ભҠಋઢͷෳࡶ͕WYSIWYGʹͳΔ • ͲΜͳભҠ(Push? Modal?)Λ͢Δͷ͔ḷΓ͍͢ • σϝϦοτ •
performSegue, prepareForSegue͔Βಀ͛ΒΕͳ͍… ը໘ભҠͷ࣮ʹ StoryboardΛετʔϦʔϘʔυͱͯ͠͏
case .developSimpleView
• ϝϦοτ • ࠷ऴతͳը໘͕(ͦΕͳΓʹ)WYSIWYGʹͳΔ • ࣌ؒͰAuto LayoutରԠͰ͖Δ • σϝϦοτ •
ࣗ༝͍(HIG͔Βͷҳ͍͠) γϯϓϧͳViewͷ࣮ʹ StoryboardΛInterface Builderͱͯ͠͏
case .developComplexView, .developLooksLikeOtherPlatformUI
※ΠϝʔδͰ͢
• ϝϦοτ • ը໘ͷߏཁૉ͕(ͦΕͳΓʹ)WYSIWYGʹͳΔ • Auto LayoutରԠIBʹͤɼͩ͜ΘΓͷ࣮ՕॴͷΈίʔυͰ࣮ݱ • σϝϦοτ •
ը໘ͷશମ૾/ΠϯλϥΫγϣϯWYSIWYGʹͳΒͳ͍(Ͱ͖ͳ͍) ෳࡶͳViewಠࣗͷςΠετͷUIΛ࣮͢Δ࣌ nibͱίʔυͰ࣮͢Δ
ͱ͍͑ɼ ※ੈքதͷ։ൃνʔϜΛ·ͤΔίϯϑϦΫτͷ͋Δ͕ɼ ࠓճʮׂ͔Β͍ํߟ͑Δʯͱͯ͠ΛਐΊ͖ͯͨͷͰׂѪ ϑΝΠϧ૿͑ɼ Ϗϧυ࣌ؒ૿͑Δ…
None
StoryboardΛੵۃతʹ͏͖͔ʁ • Storyboardͷ2ͭͷׂ͔Βߟ͑Δ • ετʔϦʔϘʔυͱͯ͠YES ը໘ભҠɾಋઢͷWYSIWYGԽ • Interface Builderͱͯ͠ঢ়گʹΑΔ γϯϓϧͰHuman
Interface Guidelines४ڌͳը໘YES ෳࡶͳը໘ɾಠࣗςΠετͷը໘NO