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
UIStackView demystified
Search
kazuhiro4949
August 20, 2018
Technology
1
2.7k
UIStackView demystified
Nagoya iOS meetup Vol. 4
※ iOS14以降、スライド内にあるCATransformLayerはCALayerに変更され、通常のViewと同じように振る舞うようになりました。
kazuhiro4949
August 20, 2018
Tweet
Share
More Decks by kazuhiro4949
See All by kazuhiro4949
SwiftUIをUIKitのライフサイクルで拡張するTips
kazuhiro4949
4
2.7k
iOS15でプッシュ通知のテストが大変だった話
kazuhiro4949
0
600
Source Editor Extensionと SwiftSyntaxでコード自動生成ツール を作る
kazuhiro4949
2
3.9k
iOS 12サポート終了で使えるAPIおさらい
kazuhiro4949
2
350
Source Editor ExtensionとSwiftSyntaxでコード自動生成
kazuhiro4949
0
91
大企業の最前線でコードを書き続けるためにやってきたこと
kazuhiro4949
28
19k
10分で振り返るここ数年のWWDCの技術トレンド
kazuhiro4949
0
300
コードを書きながら同時に設計していくためのiOSアプリ開発方針
kazuhiro4949
6
2.6k
身近な技術的課題から始めるOSSプロジェクト
kazuhiro4949
0
310
Other Decks in Technology
See All in Technology
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
18k
AWS Well-Architected から考えるオブザーバビリティの勘所 / Considering the Essentials of Observability from AWS Well-Architected
sms_tech
1
850
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
130
スプリントゴール未達症候群に送る処方箋
kakehashi
PRO
1
180
低レイヤソフトウェア技術者が YouTuberとして食っていこうとした話
sat
PRO
7
5.8k
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
130
データ駆動経営の道しるべ:プロダクト開発指標の戦略的活用法
ham0215
2
230
OTel 公式ドキュメント翻訳 PJ から始めるコミュニティ活動/Community activities starting with the OTel official document translation project
msksgm
0
200
激動の時代、新卒エンジニアはAIツールにどう向き合うか。 [LayerX Bet AI Day Countdown LT Day1 ツールの選択]
tak848
0
530
ObsidianをLLM時代のナレッジベースに! クリッピング→Markdown→CLI連携の実践
srvhat09
7
8.8k
20250719_JAWS_kobe
takuyay0ne
1
160
20250718_ITSurf_“Bet AI”を支える文化とコストマネジメント
helosshi
1
210
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
51
8.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Optimizing for Happiness
mojombo
379
70k
Documentation Writing (for coders)
carmenintech
72
4.9k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
The Cult of Friendly URLs
andyhume
79
6.5k
Making Projects Easy
brettharned
116
6.3k
Practical Orchestrator
shlominoach
189
11k
Raft: Consensus for Rubyists
vanstee
140
7k
Done Done
chrislema
184
16k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Transcript
6*4UBDL7JFXEFNZTUJpFE ,B[VIJSP)BZBTIJ /BHPZBJ04NFFUVQ7PM
6*4UBDL7JFXͱ w 7JFXΛॎԣྻͤ͞ΔͨΊ ʹ͏7JFXίϯϙʔωϯτ w ઃఆͰͲ͏ྻͤ͞Δ͔Λܾ ΊΔ w 6*4UBDL7JFXͷ֊Ͱෳࡶͳ ϨΠΞτΛදݱͰ͖Δ
IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
6*4UBDL7JFXͱ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOVJLJUVJTUBDLWJFX w 7JFXΛॎԣྻͤ͞ΔͨΊ ʹ͏7JFXίϯϙʔωϯτ w ઃఆͰͲ͏ྻͤ͞Δ͔Λܾ ΊΔ w 6*4UBDL7JFXͷ֊Ͱෳࡶͳ
ϨΠΞτΛදݱͰ͖Δ
6*4UBDL7JFXͱ w 7JFXΛॎԣྻͤ͞ΔͨΊ ʹ͏7JFXίϯϙʔωϯτ w ઃఆͰͲ͏ྻͤ͞Δ͔Λܾ ΊΔ w 6*4UBDL7JFXͷ֊Ͱෳࡶͳ ϨΠΞτΛදݱͰ͖Δ
IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
6*4UBDL7JFXͷಛ w ઃఆͷมߋ7JFXͷՃͰಈతʹϨΠΞτมߋ͕Ͱ͖Δ w ෦ͷWJFXʹରͯ͠JT)JEEFOUSVFʹ͢Δͱτϧπϝ͞ΕΔ
6*4UBDL7JFXͷ෦࣮ w ϨϯμϦϯάػೳΛ࣋ͨͳ͍6*7JFXͷαϒΫϥε w நԽ͞ΕͨઃఆΛجʹ"VUPMBZPVUΛࣗಈͰషΔ
͜Ε͚ͩͰͲ͏Ͱ͍͍͕ٙ ৭ʑग़ͯ͘Δ
BSSBHFE4VCWJFXTWTTVCWJFXT
BSSBHFE4VCWJFXTWTTVCWJFXT w 6*4UBDL7JFXͰྻͤ͞ΔWJFX BSSBOHFE4VCWJFXTʹೖΔ w ͔͠͠6*7JFXͷαϒΫϥεͱ͍͏͜ ͱɺTVCWJFXT͍࣋ͬͯΔ w ͍ͭ͜ʹWJFXΛηοτ͢ΔͱͲ͏ͳ Δʁ
BSSBHFE4VCWJFXTWTTVCWJFXT w 6*4UBDL7JFXͰྻͤ͞ΔWJFX BSSBOHFE4VCWJFXTʹೖΔ w ͔͠͠6*7JFXͷαϒΫϥεͱ͍͏͜ ͱɺTVCWJFXT͍࣋ͬͯΔ w ͍ͭ͜ʹWJFXΛηοτ͢ΔͱͲ͏ͳ Δʁ
4UBDL7JFXʹ7JFXΛฒΔ
4UBDL7JFXʹBEE4VCWJFX͢Δ
4UBDL7JFXʹBEE4VCWJFX͢Δ
ී௨ʹTVCWJFXͱͯ͠Ճ͞ΕΔͬΆ͍
JT)JEEFOUSVFͰԿ͕ى͖͍ͯΔʁ
JT)JEEFOUSVFͰԿ͕ى͖ ͍ͯΔʁ w JT)JEEFOUSVFͱ͢Δͱ ϨΠΞτର͔Βফ͑Δ w ௨ৗͷTVCWJFXTʹରͯ͠ JT)JEEFOUSVFͨ͠ͱ͖ ͱͷ෦ͷڍಈͷҧ͍ͳ ʹ͔
JT)JEEFOUSVFͰԿ͕ى͖ ͍ͯΔʁ
JT)JEEFOUSVFͰԿ͕ى͖͍ͯΔʁ w ௨ৗͷTVCWJFXͷ࣌ͱಉ͡Ͱඳըࣗମແࢹ͞ΕΔͬΆ͍ w ͨͩ͠௨ৗͷTVCWJFXͱҧͬͯͰ͋Δ4UBDL7JFXͱͦͷத ͷ7JFXͷ੍͕ࣗಈతʹॻ͖͑ΒΕ͍ͯΔ w BEE$POTUSBJOU SFNPWF$POTUSBJOU͕ൃੜ͍ͯ͠ΔͷͰύ ϑΥʔϚϯεʹҙ͢Δඞཁ͕͋Δ
ϨϯμϦϯάػೳΛ࣋ͨͳ͍ʁ
ϨϯμϦϯάػೳΛ࣋ͨͳ͍ʁ w 7JFXͷϓϩύςΟΛม͑ͯΈΔͱͲ͏ͳΔʁ w ESBX3FDU ݺΕΔʁ w 6*7JFXͷMBZFSϓϩύςΟʹԿ͕ೖ͍ͬͯΔͷ͔
CBDLHSPVOE$PMPSͰ6*4UBDL7JFXͷ ৭Λม͑ͯΈΔ w ಁ໌ͷ··
ESBX3FDU @ ݺΕΔ w ݺΕͯ·ͨ͠
MBZFSʹԿ͕ೖ͍ͬͯΔʁ w $"5SBOTGPSN-BZFSͰͨ͠ɻϨΠϠΛ%ͱͯ͠ѻ͍ͬͯΔͬΆ͍ɻ w ͦΕͰCBDLHSPVOE$PMPSͷมߋΛड͚ͳ͘ͳ͍༷ͬͯͨ ͳͷͰ NBTLT5P#PVOETޮ͔ͳ͍
"VUPMBZPVUΛ෦Ͱு͍ͬͯΔͱ͍͏͜ͱ ͦͷ؍ͰύϑΥʔϚϯε͕ѱ͘ͳΔ͜ͱ͋Γ͑Δʁ
ͲΜͳ"VUPMBZPVU͕షΒΕ͍ͯΔͷ͔
ͲΜͳ"VUPMBZPVU͕షΒΕ͍ͯΔͷ͔ w ී௨ʹߟ͑ͨΒ͜͏షΔ ͩΖ͏ͳ͍ͬͯ͏ී௨ͷ షΓํ͕͞Ε͍ͯ·ͨ͠
ωετ͞Εͨ6*4UBDL7JFXͷॲཧ࣌ؒΛݟͯΈΔ w "VUPMBZPVUͷωετ ҰൠతʹO?LͰ͕࣌ؒ૿ ͍͑ͯ͘ ʙJ04 IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
ωετ͞Εͨ6*4UBDL7JFXͷॲཧ࣌ؒΛݟͯΈΔ w ͜Μͳײ͡Ͱͻͨ͢Β6*4UBDL7JFXΛ ωετ͍ͯ͘͠
ωετ͞Εͨ6*4UBDL7JFXͷॲཧ࣌ؒΛݟͯΈΔ w 6*7JFXʹରͯ͠"VUPMBZPVUΛషͬ ͍ͯͬͨ߹ͱܗมΘΒͳ͍ ༷
NT ωετ
݁ w ϨΠΞτʹର͢ΔศརͳΠϯλʔϑΣʔεͱͯ͠ఏڙ͞ Ε͍ͯΔ͕ɺಛผϨΠΞτͷύϑΥʔϚϯεΛ࠷దԽ͠ ͍ͯͳ͍ ඳըͷίετ͍ w 6*4UBDL7JFX͕ͨ͘͞Μωετ͞ΕͨϨΠΞτͷ߹ɺ 6*7JFXΛϑϥοτʹϨΠΞτͨ͠΄͏͕ύϑΥʔϚϯε
͍͍͔͠Εͳ͍
ࢀߟࢿྉ w 6*4UBDL7JFX6*,JUc"QQMF%FWFMPQFS%PDVNFOUBUJPO w IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOVJLJUVJTUBDLWJFX w .ZTUFSJFTPG"VUP-BZPVU 1BSU w IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED
w 8IBUT/FXJO$PDPB5PVDI w IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED