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
SwiftUI,Combine Framework,KeyPath - 堅固な関係からSwif...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
notoroid
January 18, 2020
Programming
650
1
Share
SwiftUI,Combine Framework,KeyPath - 堅固な関係からSwiftUI への閾値を下げる
SwiftUI を理解するのに欠かせないCombine framework とKeyPath についてのプレゼンテーション。
notoroid
January 18, 2020
More Decks by notoroid
See All by notoroid
New_features_in_Xcode26.3_to_Xcode26.4.pdf
notoroid
0
71
iOS26 オーディオ録音新機能 - iOS26 AVInputPickerInteraction
notoroid
0
86
Info.plist - after Xcode26.
notoroid
0
60
GeometryReader - SwiftUI
notoroid
0
97
iOS 26 SDKの新機能 (liquid抜き) - iOS26orLaterUpdateAndSceneForUIKit
notoroid
0
220
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
220
UIViewController - Interactive PopGesture
notoroid
0
95
Xcodeショートカット 2025年版
notoroid
0
120
ZIPでくれ - Apple謹製 geocoding/ reverse geocoding
notoroid
0
170
Other Decks in Programming
See All in Programming
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
3
170
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
630
Programming with a DJ Controller — not vibe coding
m_seki
3
140
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
130
実践CRDT
tamadeveloper
0
580
Lightning-Fast Method Calls with Ruby 4.1 ZJIT / RubyKaigi 2026
k0kubun
3
820
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
210
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
3
280
NakouPAY説明用
annouim0
0
250
Angular Signal Forms
debug_mode
0
110
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
560
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
220
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
800
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.6k
Writing Fast Ruby
sferik
630
63k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
RailsConf 2023
tenderlove
30
1.4k
Designing for Timeless Needs
cassininazir
0
200
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
300
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
320
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
4XJGU6* $PNCJOF 'SBNFXPSL ,FZ1BUI ݎݻͳ͔ؔΒ4XJGU6*ͷᮢΛԼ͛Δ
ࣗݾհ
ೳొཁ !OPUPSPJE w J04ΞϓϦ։ൃऀ w ߸͍Γ·͢ిࢉاը w !OPUPSPJE w !JSJNBTV
w Fεϙʔπ
ॆిใࠂ͞Μ #BUUFSFDFJWFS w όοςϦʔϞχλʔ ϢʔςΟϦςΟʔ w ࠷େ ࣮ػ ϦϞʔτ
w ख࣋ͪͷJ1IPOF͔Βଞʹ͍࣋ͬͯΔ J1IPOF J1BEͳͲͷػثͷόοςϦʔঢ়ଶ֬ ೝՄೳ w ࣗʹ͋ΔJ1IPOFͷόοςϦʔঢ়ଶ֬ೝՄ ೳ
ॆిใࠂ͞Μ #BUUFSFDFJWFS w </FX>ॆిྃ௨ w ॆిྃΛ͑ͯ͘ΕΔ௨ΛՃɻ w ҎԼʹࢦఆ͢Δ͜ͱͰόοςϦʔ ΛέΞ͢Δ͜ͱ͕Մೳ w
Կ͔ͱߴ͍J1IPOFΛ࣋ͪͤ͞Δͷʹ༗ ༻
w ։ൃͨ͠ΞϓϦͷۙگ w ։ൃελΠϧసͷલ৮Ε w ,FZ1BUI w $PNCJOFGSBNFXPSL
։ൃͨ͠ΞϓϦͷۙگ
0CKFDUJWF$͔Β4XJGUͷҠ২ͨ͠ΞϓϦ
ಈ͘ϦϦʔε͢Δ͜ͱΛ༏ઌ
ݱࡏ෦ߏΛཧͭͭ͠ ৽ػೳରԠத
։ൃελΠϧసͷલ৮Ε
4XJGU6*ΞϓϦ։ൃͰ ໘ͨ͜͠ͱ
ଞ4XJGUͷςΫϊϩδʔΛ Βͳ͍ͱ࡞ۀ͕ετοϓ͢Δ
"QQMFఏڙ4XJGUಛԽͷ ༗໊ϑϨʔϜϫʔΫͭ $PNCJOFGSBNFXPSL 4XJGU6*
։ൃऀ͕ 0CKFDUJWF$ΑΓ ް͍ 4XJGUʹಛԽͨ͠ϑϨʔϜϫʔΫ ૿͑ͯ͘Δ͔
4XJGU6*ͰΘΕ͍ͯΔ 4XJGUͷςΫϊϩδʔΛઆ໌ͯ͠ΈΔ
ຖ೦ͱͯ͠Εͳ͍Α͏ʹ এ͑ͯΑ͍͙Β͍Λબͼ·ͨ͠
,FZ1BUI
ΩʔΛͯ͠ʹ ΞΫηεͰ͖Δػೳ
4XJGU͔Βݱࡏͷ,FZ1BUIͷܗʹ 0CKFDUJWF$͔Β͋Δػೳͱผ
,FZQBUI 4XJGUʙ w ܕΛݫີʹѻ͏จࣈྻͰͷΩʔΞΫηεΛલఏͱ͠ͳ͍ w /40CKFDUඇґଘ 4XJGUͰͷར༻ಛԽ w ఆٛؒͷύε࿈͕݁Մೳ
w ྻͷΞΫηε͕Մೳ
͍ํ ɾࣗࣗΛ໌ࣔ͢Δ߹ a<Ϋϥε໊>Ωʔ໊\Ωʔ໊^ ɾࣗݾݴٴ͢Δ߹4FMGΛ༻Ͱ͖Δ a4FMGΩʔ໊ ɾলུܗ͕ڐՄ͞Ε͍ͯΔ aΩʔ໊ ɾྻࢦఆͰ͖Δ a<Ϋϥε໊>ྻΩʔ໊<ΠϯσοΫε>
Ωʔͷ࿈݁ a<Ϋϥε໊>Ωʔ໊BQQFOEJOH a<Ϋϥε໊>Ωʔ໊ BQQFOEJOHΛΘͳͯ͘࿈݁ͯ͠هड़Մೳ
4XJGUͷࠒͷ༻్ w ,70 ,FZ7BMVF0CTFSWJOH ͱͯ͠༻ <ΦϒδΣΫτ໊>PCTFSWF <Ωʔύε> PQUJPOT<Φϓγϣϯ> \ <ΦϒδΣ
Ϋτ> <มߋ> JO ^
4XJGUҎ߱ͷ,FZ1BUIͷ༻్ w ,70 ,FZ7BMVF0CTFSWJOH w $PNCJOFGSBNFXPSL w NBQ
w BTTJHO w 4XJGU6* w 'PS&BDI -JTU 'PSN w FOWJSPONFOU
ॆిใࠂ͞ΜͰͷ,FZ1BUI༻ճ ໊ؔ ༻ ϑϨʔϜϫʔΫ ༻్ NBQ $PNCJOFGSBNFXPSL 'PS&BDI 4FMGTVQQPSUF
E-PDBMFT 4XJGU6* 1SFWJFX FOWJSPONFOU aMPDBMF MPDBMF 4XJGU6* 1SFWJFX BTTJHO UP PO $PNCJOFGSBNFXPSL 'PS&BDI JEaTFMG 4XJGU6* FOWJSPONFOU aJT&OBCM FE 4XJGU6*
ॆిใࠂ͞ΜͰͷ,FZ1BUI༻ճ ໊ؔ ༻ ϑϨʔϜϫʔΫ ༻్ NBQ $PNCJOFGSBNFXPSL 'PS&BDI 4FMGTVQQPSUF
E-PDBMFT 4XJGU6* 1SFWJFX FOWJSPONFOU aMPDBMF MPDBMF 4XJGU6* 1SFWJFX BTTJHO UP PO $PNCJOFGSBNFXPSL 'PS&BDI JEaTFMG 4XJGU6* FOWJSPONFOU aJT&OBCM FE 4XJGU6*
,FZ1BUIͷ༻్4XJGU6*ΞϓϦ w $PNCJOFGSBNFXPSL༻࣌ʹͷऔΓग़͠खஈͱͯ͠ར༻͕࠷ଟ w ҙ֎ʹ1SFWJFXͰͷ༻్͕ଟ͍ ϩέʔϧΛมߋͯ͠ͷ֬ೝ w 'PS&BDIͰͷ༻్άϥϑද͚ࣔͩ༻
$PNCJOFGSBNFXPSL
$PNCJOFGSBNFXPSL w σʔλͷྲྀྔɺྲྀΛ੍ޚ͢ΔͨΊͷϑϨʔϜϫʔΫ w ඇಉظʹରԠ w σʔλجຊܕɺߏܕɺྻڍܕɺΦϒδΣΫτΛࢦఆͰ͖Δ w 4XJGUͷػೳΛଟ༻ (FOFSJD
,FZ1BUI w ϑϨʔϜϫʔΫ͕ඞཁ JNQPSU$PNCJOF J04ʙ
Πϝʔδਤ
σʔλ σʔλ σʔλ σʔλͷೖΓޱ
σʔλͷมܗ σʔλC σʔλC σʔλC σʔλC σʔλB σʔλB
σʔλC σʔλC σʔλC σʔλC σʔλB σʔλB 1VCMJTIFST 4VCTDSJCFST 0QFSBUPST σʔλͷมܗ
σʔλͷมܗɺσʔλͷྲྀɺσʔλͷྲྀྔͷՃ σʔλͷൃߦऀ σʔλͷߪಡऀ
JNQPSU6*,JU JNQPSU$PNCJOF WBSBOZ$BODFMBCMF4FU"OZ$BODFMMBCMF MFUQBTTUISPVHI4VCKFDU1BTTUISPVHI4VCKFDU*OU /FWFS MFUQBTTUISPVHI4VCKFDU1BTTUISPVHI4VCKFDU4USJOH /FWFS
QBTTUISPVHI4VCKFDU NBQ\WBMVFJO 4USJOHa WBMVF ^ TVCTDSJCF QBTTUISPVHI4VCKFDU QBTTUISPVHI4VCKFDUTJOL\ WBMVF JO QSJOU QBTTUISPVHI4VCKFDUTJOLWBMVFa WBMVF ^TUPSF JOBOZ$BODFMBCMF 1VCMJTIFS୲ 4VCTDSJCFS୲ 0QFSBUPS୲
σʔλͷൃߦݩछྨ
1VCMJTIFS݉4VCTDSJCFS 1VCMJTIFSͷछྨᶃᶄ w1BTTUISPVHI4VCKFDU w$VSSFOU7BMVF4VCKFDU 1VCMJTIFS σʔλͷൃߦݩ ͱ4VCKFDU σʔλ ͷߪಡଆ Λ݉ͶΔɺσʔλܕͷมʹదͳ
0QFSBUPSTΛ͏ NBQͳͲ
ඇಉظॲཧ 1VCMJTIFSͷछྨᶅ w'VUVSF ϦΫΤετޙɺඇಉظͰσʔλ͕खʹೖΔॲཧ ωοτϫʔΫϦΫΤε τͳͲ ͷσʔλΛड͚औΔͷʹར༻͢ΔɻΤϥʔΛऔಘͰ͖ͣΤϥʔ ͕ฦͬͯ͘Δ͜ͱ͋Δ
$PNCJOFGSBNFXPSLͷಛ
ΤϥʔϨʔϯͷ༗ແ͕બΔ
σʔλͷೖΓޱ
σʔλͷೖΓޱ
σʔλͷೖΓޱ
MFUQBTTUISPVHI4VCKFDU1BTTUISPVHI4VCKFDU*OU /FWFS QBTTUISPVHI4VCKFDUTFOE QBTTUISPVHI4VCKFDUTJOL\ WBMVF JO QSJOU
QBTTUISPVHI4VCKFDUTJOLWBMVFa WBMVF ^TUPSF JOBOZ$BODFMBCMF QBTTUISPVHI4VCKFDUTFOE MFUDVSSFOU7BMVF4VCKFDU$VSSFOU7BMVF4VCKFDU*OU /FWFS DVSSFOU7BMVF4VCKFDUTJOL\ WBMVF JO QSJOU DVSSFOU7BMVF4VCKFDUTJOLWBMVFa WBMVF ^TUPSF JOBOZ$BODFMBCMF 'VUVSF*OU /FWFS\QSPNJTFJO 5ISFBETMFFQ GPS5JNF*OUFSWBM %JTQBUDI2VFVFHMPCBM BTZOD\ %JTQBUDI2VFVFNBJOBTZOD\ QSPNJTF TVDDFTT ^ ^ ^ TJOL\ WBMVF JOQSJOU 'VUVSFTJOLWBMVFa WBMVF ^TUPSF JOBOZ$BODFMBCMF TVCTDSJCF QBTTUISPVHI4VCKFDU TUPSF JOBOZ$BODFMBCMF ΤϥʔϨʔϯͳ͠
MFUQBTTUISPVHI4VCKFDU1BTTUISPVHI4VCKFDU*OU &SSPS QBTTUISPVHI4VCKFDUTFOE QBTTUISPVHI4VCKFDUTJOL SFDFJWF$PNQMFUJPO\ DPNQMFUJPO JO
TXJUDIDPNQMFUJPO\ DBTFGBJMVSF MFUFSSPS QSJOU QBTTUISPVHI4VCKFDUMPDBMJ[FE%FTDSJQUJPOa FSSPSMPDBMJ[FE%FTDSJQUJPO DBTFpOJTIFE CSFBL ^ ^ \ WBMVF JO QSJOU QBTTUISPVHI4VCKFDUTJOLWBMVFa WBMVF ^TUPSF JOBOZ$BODFMBCMF QBTTUISPVHI4VCKFDUTFOE MFUDVSSFOU7BMVF4VCKFDU$VSSFOU7BMVF4VCKFDU*OU &SSPS DVSSFOU7BMVF4VCKFDUTJOL SFDFJWF$PNQMFUJPO\ DPNQMFUJPO JO TXJUDIDPNQMFUJPO\ DBTFGBJMVSF MFUFSSPS QSJOU DVSSFOU7BMVF4VCKFDUMPDBMJ[FE%FTDSJQUJPOa FSSPSMPDBMJ[FE%FTDSJQUJPO DBTFpOJTIFE CSFBL ^ ^ SFDFJWF7BMVF\ WBMVF JO QSJOU DVSSFOU7BMVF4VCKFDUTJOLWBMVFa WBMVF ^ TUPSF JOBOZ$BODFMBCMF 'VUVSF*OU &SSPS\QSPNJTFJO 5ISFBETMFFQ GPS5JNF*OUFSWBM %JTQBUDI2VFVFHMPCBM BTZOD\ %JTQBUDI2VFVFNBJOBTZOD\ QSPNJTF TVDDFTT ^ ^ ^ TJOL SFDFJWF$PNQMFUJPO\ DPNQMFUJPO JO TXJUDIDPNQMFUJPO\ DBTFGBJMVSF MFUFSSPS QSJOU 'VUVSFMPDBMJ[FE%FTDSJQUJPOa FSSPSMPDBMJ[FE%FTDSJQUJPO DBTFpOJTIFE CSFBL ^ ^ SFDFJWF7BMVF\ WBMVF JO QSJOU 'VUVSFTJOLWBMVFa WBMVF ^ TUPSF JOBOZ$BODFMBCMF ΤϥʔϨʔϯ͋Γ
$PNCJOF$PNNVOJUZ SYTXJGUUPDPNCJOFDIFBUTIFFU HJUIVCDPN$PNCJOF$PNNVOJUZSYTXJGUUPDPNCJOFDIFBUTIFFU 3Y4XJGUͱͷػೳൺֱ
6TJOH$PNCJOF IFDLKHJUIVCJPTXJGUVJOPUFT $PNCJOFGSBNFXPSLͷ͍ํ
ϥΠόϧ 3Y4XJGU ΑΓܰྔͳ ͷͰ͓͢͢Ί