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
addObserver: から考える API インタフェース
Search
KAMEDAkyosuke
December 18, 2017
Programming
1
470
addObserver: から考える API インタフェース
NSNotificationCenter の addObserver が iOS9 から removeObserver しなくて良くなったので API の対称性から外れてしまったお話です
KAMEDAkyosuke
December 18, 2017
Tweet
Share
Other Decks in Programming
See All in Programming
DMMを支える決済基盤の技術的負債にどう立ち向かうか / Addressing Technical Debt in Payment Infrastructure
yoshiyoshifujii
5
720
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
110
Vibe Codingの幻想を超えて-生成AIを現場で使えるようにするまでの泥臭い話.ai
fumiyakume
21
10k
Google I/O Extended Incheon 2025 ~ What's new in Android development tools
pluu
1
220
Claude Code と OpenAI o3 で メタデータ情報を作る
laket
0
110
階層化自動テストで開発に機動力を
ickx
1
470
Jakarta EE Meets AI
ivargrimstad
0
560
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
15
9.3k
Go製CLIツールをnpmで配布するには
syumai
2
1.1k
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
250
JetBrainsのAI機能の紹介 #jjug
yusuke
0
180
Understanding Kotlin Multiplatform
l2hyunwoo
0
250
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
KATA
mclloyd
31
14k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
It's Worth the Effort
3n
185
28k
GitHub's CSS Performance
jonrohan
1031
460k
Balancing Empowerment & Direction
lara
1
520
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Navigating Team Friction
lara
188
15k
Agile that works and the tools we love
rasmusluckow
329
21k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
870
Transcript
BEE0CTFSWFS͔Βߟ͑ Δ"1*ΠϯλϑΣʔε ,":"$ٕज़෦ ُాژհ
ࣗݾհ w ,".&%"LZPTVLF w UXJUUFS!(FNNCV w UXJUDI!,".&%"LZPTVLF w J04"OESPJE&OHJOFFS w
ࠇຐज़ಘҙ
J04͔Β/4/PUJpDBUJPO$FOUFSͷ SFNPWF0CTFSWFS͠ͳͯ͘ྑ͘ͳͬ ͨͬͯฉ͍ͨ͜ͱ͋Γ·͢ΑͶʁ BOESPJEͷํ#SPBEDBTUͷSFHJTUFS3FDFJWFSͨ͠ޙʹVOSFHJTUFS3FDFJWFS͠ͳͯ͘ྑ ͘ͳͬͨͱࢥ͍͚ͬͯͨͩΕେৎͰ͢ɻ
υΩϡϝϯτ BEE0CTFSWFSTFMFDUPSOBNFPCKFDU %JTDVTTJPO *GZPVSBQQUBSHFUTJ04BOEMBUFSPSNBD04 BOEMBUFS ZPVEPOUOFFEUPVOSFHJTUFSBOPCTFSWFSJO JUTEFBMMPDNFUIPE SFGTIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOGPVOEBUJPOOTOPUJpDBUJPODFOUFS BEEPCTFSWFS MBOHVBHFPCKD
ϦϦʔεϊʔτ /4/PUJpDBUJPO$FOUFS *O049BOEJ04/4/PUJpDBUJPO$FOUFSBOE /4%JTUSJCVUFE/PUJpDBUJPO$FOUFSXJMMOPMPOHFSTFOE OPUJpDBUJPOTUPSFHJTUFSFEPCTFSWFSTUIBUNBZCF EFBMMPDBUFE CMBICMBICMBI SFGTIUUQTEFWFMPQFSBQQMFDPNMJCSBSZDPOUFOUSFMFBTFOPUFT'PVOEBUJPO3/ 'PVOEBUJPO0MEFS/PUFTJOEFYIUNM9@/PUFT
ϦϦʔεϊʔτ CMBICMBICMBI #MPDLCBTFEPCTFSWFSTWJBUIF</4/PUJpDBUJPO$FOUFS BEE0CTFSWFS'PS/BNFPCKFDURVFVFVTJOH#MPDL> NFUIPETUJMMOFFEUPCFVOSFHJTUFSFEXIFOOPMPOHFS JOVTFTJODFUIFTZTUFNTUJMMIPMETBTUSPOHSFGFSFODF UPUIFTFPCTFSWFST SFGTIUUQTEFWFMPQFSBQQMFDPNMJCSBSZDPOUFOUSFMFBTFOPUFT'PVOEBUJPO3/ 'PVOEBUJPO0MEFS/PUFTJOEFYIUNM9@/PUFT
͋Εʁ
#MPDLCBTFEPCTFSWFSTWJBUIF</4/PUJpDBUJPO$FOUFS BEE0CTFSWFS'PS/BNFPCKFDURVFVFVTJOH#MPDL> NFUIPETUJMMOFFEUPCFVOSFHJTUFSFEXIFOOPMPOHFS JOVTFTJODFUIFTZTUFNTUJMMIPMETBTUSPOHSFGFSFODF UPUIFTFPCTFSWFST
ͭ·Γ
J04͔Β/4/PUJpDBUJPO$FOUFS ͷSFNPWF0CTFSWFS͠ͳͯ͘ ྑ͘ͳͬͨ
Ͱͳ͘
J04͔Β/4/PUJpDBUJPO$FOUFSͷ BEE0CTFSWFSSFNPWF0CTFSWFS ͠ͳͯ͘ྑ͘ͳͬͨ
͜ΕΛ;·͑ͯ
ͦͦSFNPWF0CTFSWFS ͠ͳͯ͘Α͍ͬͯྑ͍͜ͱʁ
ϓϩάϥϛϯάͷ͓࡞๏ w ϝϞϦΛ֬อͨ͠Β w ϑΝΠϧΛ։͍ͨΒ w τϥϯβΫγϣϯΛ։࢝ͨ͠Β w 5$1ιέοτΛ։͍ͨΒ
ϓϩάϥϛϯάͷ͓࡞๏ w ϝϞϦΛ֬อͨ͠Βղ์͠ͳ͚ΕͳΒͳ͍ w ϑΝΠϧΛ։͍ͨΒด͡ͳ͚ΕͳΒͳ͍ w τϥϯβΫγϣϯΛ։࢝ͨ͠Βऴྃ͠ͳ͚ΕͳΒͳ͍ w 5$1ιέοτΛ։͍ͨΒด͡ͳ͚ΕͳΒͳ͍
BEESFNPWF0CTFSWFS Ͳ͏Ͱ͠ΐ͏͔ʁ
None
͍͔ͭ͘ͷΫϥεΛ֬ ೝͯ͠Έ·͠ΐ͏
8,)551$PPLJF4UPSF %JTDVTTJPO 5IFDPPLJFTUPSFEPFTOPUNBJOUBJOBTUSPOH SFGFSFODFUPUIFPCTFSWFS:PVBSFSFTQPOTJCMFGPS SFNPWJOHUIFPCTFSWFSCFGPSFJUCFDPNFTJOWBMJE SFGTIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOXFCLJUXLIUUQDPPLJFTUPSF BEEPCTFSWFS
"71MBZFS BEE1FSJPEJD5JNF0CTFSWFS'PS*OUFSWBMRVFVFVTJOH#MPDL %JTDVTTJPO :PVNVTUNBJOUBJOBTUSPOHSFGFSFODFUIFSFUVSOFE WBMVFBTMPOHBTZPVXBOUUIFUJNFPCTFSWFSUPCF JOWPLFECZUIFQMBZFS&BDIJOWPDBUJPOPGUIJTNFUIPE TIPVMECFQBJSFEXJUIBDPSSFTQPOEJOHDBMMUP SFNPWF5JNF0CTFSWFS3FMFBTJOHUIFPCTFSWFSPCKFDU XJUIPVUJOWPLJOHSFNPWF5JNF0CTFSWFSXJMMSFTVMUJO VOEFpOFECFIBWJPS
SFGTIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOBWGPVOEBUJPOBWQMBZFS BEEQFSJPEJDUJNFPCTFSWFSGPSJOUFSW MBOHVBHFPCKD
ϓϩάϥϛϯάͷ͓࡞๏ w SFHJTUFSͨ͠ΒVOSFHJTUFS͠ͳ͚ΕͳΒͳ͍
ͭ·Γ /4/PUJpDBUJPO$FOUFSͷBEE0CTFSWFS SFNPWF0CTFSWFS͠ͳͯ͘ྑ͘ͳ͚ͬͨͲɺϓϩάϥϛ ϯάͷ͓࡞๏ͱͯ͠ྑ͘ͳ͍ʂʂ
/4/PUJpDBUJPO$FOUFS ͦΕҎ֎ͷΫϥε SFNPWF0CTFSWFS͠ͳ͍ ͳ͠ ͋Γ SFNPWF0CTFSWFS͢Δ ͳ͠ ͳ͠ දʹ͢Δͱ
ࢲͨͪͷνʔϜͰ w SFHJTUFSVOSFHJTUFS BEESFNPWF0CTFSWFS ͓࡞๏ w /4/PUJpDBUJPO$FOUFS͚ͩྫ֎ͷঢ়ଶͰΉ͠ΖଞͷΫ ϥεͰؒҧ͑ΔڪΕ͕͋Δ w ͳͷͰSFNPWF0CTFSWFSΛৗʹॻ͘ํʹͱ͍͏͔
BEE0CTFSWFS'PS/BNFPCKFDURVFVFVTJOH#MPDLΛ ͏͜ͱʹ
·ͱΊ w "1*ͷΠϯλϑΣʔεͦΕ͚ࣗͩͰͳ͘ଞͷΫϥε ϑϨʔϜϫʔΫ͔ΒܾΊΔ͖ w ͳͷͰɺ͋Δ"1*ͷ༻ํ๏͕มΘ͔ͬͨΒͱ͍ͬͯଞ ͷΫϥεͱͷؔ࿈ʹҙ͖͢ w ͦͷ্ͰࣗͷϓϩδΣΫτʹͲ͏औΓΉ͔ܾΊ·͠ΐ ͏