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
iOSがだいたい読めるようになるセッション
Search
Takuya Okamoto
July 21, 2017
Programming
0
2.5k
iOSがだいたい読めるようになるセッション
エンジニアがiOSの要所を抑えて雰囲気で読めるようになることを目指すセッションです。
Takuya Okamoto
July 21, 2017
Tweet
Share
More Decks by Takuya Okamoto
See All by Takuya Okamoto
いいDesign(=Product)とは?
takuyaokamoto
1
390
Other Decks in Programming
See All in Programming
Claude Code + Container Use と Cursor で作る ローカル並列開発環境のススメ / ccc local dev
kaelaela
11
6.2k
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
970
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1.1k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
170
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
1
360
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
320
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
590
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
140
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
2
14k
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
12k
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
280
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
130
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1031
460k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Become a Pro
speakerdeck
PRO
29
5.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Code Reviewing Like a Champion
maltzj
524
40k
How STYLIGHT went responsive
nonsquared
100
5.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Documentation Writing (for coders)
carmenintech
72
4.9k
The Invisible Side of Design
smashingmag
301
51k
Automating Front-end Workflow
addyosmani
1370
200k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
J04ָ 5B L V ZB 0 L B N
PU P 铣 ״ ֲ ח ז إ ح ء ّ ٝ ְְ չ պ
4XJGUְְָ铣 J04ְְָ铣 ➙傈ך湡垥
4XJGUְְָ铣״ֲחז
4XJGUג ְְ铣鎉铂 銲䨽ִִֶׁׁגֶֽל קהו铣״ֲחז ̕
銲䨽 0QUJPOBM JGMFU HVBSE DMPTVSF
MFU WBS GVOD DMBTT TUSVDU GPS JG 4XJGU㛇燉
MFUTUSIPHF WBSTUSIPHF
GVODIPHF \ EP ^
GVODBEE B*OU C*OU *OU\ SFUVSOB C ^
DMBTT"OJNBM\ WBSOBNF4USJOH JOJU OBNF4USJOH \ TFMGOBNFOBNF ^ ^
DMBTT%PH"OJNBM\ WBSLJOE4USJOH JOJU OBNF4USJOH LJOE4USJOH \ TFMGLJOELJOE TVQFSJOJU OBNFOBNF
^ ^
TUSVDU#PY\ MFUXJEUI*OU MFUIFJHIU*OU JOJU XJEUI*OU IFJHIU*OU \ TFMGXJEUIXJEUI TFMGIFJHIUIFJHIU ^
^
TUSVDU#PY\ MFUXJEUI*OU MFUIFJHIU*OU JOJU XJEUI*OU IFJHIU*OU \ TFMGXJEUIXJEUI TFMGIFJHIUIFJHIU ^
^ ɾ͠ ɾܧঝෆՄ
enum OnOffSwitch: Togglable { case off case
on func toggle() { switch self { case .off: self = .on case .on: self = .off } } }
銲䨽 0QUJPOBM JGMFU HVBSE DMPTVSF
0QUJPOBM
OJM
FMTFͰઈରSFUVSOCSFBLUISPX͢Δߏจ
DMPTVSF
5SBJMJOH$MPTVSFT ޙஔΫϩʔδϟ
1MBZHSPVOE 4XJGUΛ͙͢ʹࢼͤ·͢
J04ךⰋ⡤⫷
6*7JFX
6*7JFX
6*7JFX ݟ͑ͯΔϞϊશ෦͜Ε
6*7JFXך堣腉 ɾ࢛͍֯ྖҬΛදࣔ͢Δ ɾೖΕࢠͷ6*7JFXΛͯΔ
垥彊ד㖈6*7JFXך؟ـؙٓأ Label 6*-BCFM 6*4FHNFOUFE$POUSPM 6*4XJUDI 6*#VUUPO 6*4MJEFS Button Label
6*7JFX$POUSPMMFS
6*7JFX$POUSPMMFS Label Button Label
6*7JFX$POUSPMMFS ɾ̍ͭͷը໘ ɾ7JFXΛૢΔ Label Button Label
⚺銲ז 6*7JFX$POUSPMMFS ך ؟ـؙٓأ
6*5BC$POUSPMMFS
6*5BC$POUSPMMFS
6*/BWJHBUJPO$POUSPMMFS
Ⰻ⡤⫷ ͋Δը໘
Ⰻ⡤⫷ 6*7JFX$POUSPMMFS 6*7JFX ͋Δը໘
Ⰻ⡤⫷ 6*7JFX$POUSPMMFS
Ⰻ⡤⫷ 6*7JFX$POUSPMMFS 6*7JFX$POUSPMMFS 6*7JFX$POUSPMMFS
4UPSZCPBSE
4UPSZCPBSE
YJC
!*#0VUMFU
"QQ%FMFHBUF ΞϓϦຊମͷ֤ΠϕϯτΛड͚औͬͯԿ͔͢Δ ɾىಈ࣌ ɾόοΫάϥϯυೖΔ࣌ ɾ1VTIड͚औͬͨ࣌
Ⰻ⡤⫷ 6*7JFX$POUSPMMFS 6*7JFX$POUSPMMFS 6*7JFX$POUSPMMFS
6*7JFX$POUSPMMFS 6*7JFX$POUSPMMFS 6*7JFX$POUSPMMFS "QQ%FMFHBUF
铣דת׃׳ֲ
أؙٗ٦ٕ禸ך6*7JFX
6*4DSPMM7JFX
6*5BCMF7JFX
6*$PMMFDUJPO7JFX