NSNotificationCenter の addObserver が iOS9 から removeObserver しなくて良くなったので API の対称性から外れてしまったお話です
BEE0CTFSWFS͔Βߟ͑Δ"1*ΠϯλϑΣʔε,":"$ٕज़෦ُాژհ
View Slide
ࣗݾհw ,".&%"LZPTVLFw UXJUUFS!(FNNCVw UXJUDI!,".&%"LZPTVLFw J04"OESPJE&OHJOFFSw ࠇຐज़ಘҙ
J04͔Β/4/PUJpDBUJPO$FOUFSͷSFNPWF0CTFSWFS͠ͳͯ͘ྑ͘ͳͬͨͬͯฉ͍ͨ͜ͱ͋Γ·͢ΑͶʁBOESPJEͷํ#SPBEDBTUͷSFHJTUFS3FDFJWFSͨ͠ޙʹVOSFHJTUFS3FDFJWFS͠ͳͯ͘ྑ͘ͳͬͨͱࢥ͍͚ͬͯͨͩΕେৎͰ͢ɻ
υΩϡϝϯτBEE0CTFSWFSTFMFDUPSOBNFPCKFDU%JTDVTTJPO*GZPVSBQQUBSHFUTJ04BOEMBUFSPSNBD04BOEMBUFS ZPVEPOUOFFEUPVOSFHJTUFSBOPCTFSWFSJOJUTEFBMMPDNFUIPESFGTIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOGPVOEBUJPOOTOPUJpDBUJPODFOUFSBEEPCTFSWFS MBOHVBHFPCKD
ϦϦʔεϊʔτ/4/PUJpDBUJPO$FOUFS*O049BOEJ04/4/PUJpDBUJPO$FOUFSBOE/4%JTUSJCVUFE/PUJpDBUJPO$FOUFSXJMMOPMPOHFSTFOEOPUJpDBUJPOTUPSFHJTUFSFEPCTFSWFSTUIBUNBZCFEFBMMPDBUFE CMBICMBICMBISFGTIUUQTEFWFMPQFSBQQMFDPNMJCSBSZDPOUFOUSFMFBTFOPUFT'PVOEBUJPO3/'PVOEBUJPO0MEFS/PUFTJOEFYIUNM9@/PUFT
ϦϦʔεϊʔτCMBICMBICMBI#MPDLCBTFEPCTFSWFSTWJBUIF4/PUJpDBUJPO$FOUFSBEE0CTFSWFS'PS/BNFPCKFDURVFVFVTJOH#MPDL>NFUIPETUJMMOFFEUPCFVOSFHJTUFSFEXIFOOPMPOHFSJOVTFTJODFUIFTZTUFNTUJMMIPMETBTUSPOHSFGFSFODFUPUIFTFPCTFSWFSTSFGTIUUQTEFWFMPQFSBQQMFDPNMJCSBSZDPOUFOUSFMFBTFOPUFT'PVOEBUJPO3/'PVOEBUJPO0MEFS/PUFTJOEFYIUNM9@/PUFT
͋Εʁ
#MPDLCBTFEPCTFSWFSTWJBUIF4/PUJpDBUJPO$FOUFSBEE0CTFSWFS'PS/BNFPCKFDURVFVFVTJOH#MPDL>NFUIPETUJMMOFFEUPCFVOSFHJTUFSFEXIFOOPMPOHFSJOVTFTJODFUIFTZTUFNTUJMMIPMETBTUSPOHSFGFSFODFUPUIFTFPCTFSWFST
ͭ·Γ
J04͔Β/4/PUJpDBUJPO$FOUFSͷSFNPWF0CTFSWFS͠ͳͯ͘ྑ͘ͳͬͨ
Ͱͳ͘
J04͔Β/4/PUJpDBUJPO$FOUFSͷBEE0CTFSWFSSFNPWF0CTFSWFS͠ͳͯ͘ྑ͘ͳͬͨ
͜ΕΛ;·͑ͯ
ͦͦSFNPWF0CTFSWFS͠ͳͯ͘Α͍ͬͯྑ͍͜ͱʁ
ϓϩάϥϛϯάͷ͓࡞๏w ϝϞϦΛ֬อͨ͠Βw ϑΝΠϧΛ։͍ͨΒw τϥϯβΫγϣϯΛ։࢝ͨ͠Βw 5$1ιέοτΛ։͍ͨΒ
ϓϩάϥϛϯάͷ͓࡞๏w ϝϞϦΛ֬อͨ͠Βղ์͠ͳ͚ΕͳΒͳ͍w ϑΝΠϧΛ։͍ͨΒด͡ͳ͚ΕͳΒͳ͍w τϥϯβΫγϣϯΛ։࢝ͨ͠Βऴྃ͠ͳ͚ΕͳΒͳ͍w 5$1ιέοτΛ։͍ͨΒด͡ͳ͚ΕͳΒͳ͍
BEESFNPWF0CTFSWFSͲ͏Ͱ͠ΐ͏͔ʁ
͍͔ͭ͘ͷΫϥεΛ֬ೝͯ͠Έ·͠ΐ͏
8,)551$PPLJF4UPSF%JTDVTTJPO5IFDPPLJFTUPSFEPFTOPUNBJOUBJOBTUSPOHSFGFSFODFUPUIFPCTFSWFS:PVBSFSFTQPOTJCMFGPSSFNPWJOHUIFPCTFSWFSCFGPSFJUCFDPNFTJOWBMJESFGTIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOXFCLJUXLIUUQDPPLJFTUPSFBEEPCTFSWFS
"71MBZFSBEE1FSJPEJD5JNF0CTFSWFS'PS*OUFSWBMRVFVFVTJOH#MPDL%JTDVTTJPO:PVNVTUNBJOUBJOBTUSPOHSFGFSFODFUIFSFUVSOFEWBMVFBTMPOHBTZPVXBOUUIFUJNFPCTFSWFSUPCFJOWPLFECZUIFQMBZFS&BDIJOWPDBUJPOPGUIJTNFUIPETIPVMECFQBJSFEXJUIBDPSSFTQPOEJOHDBMMUPSFNPWF5JNF0CTFSWFS3FMFBTJOHUIFPCTFSWFSPCKFDUXJUIPVUJOWPLJOHSFNPWF5JNF0CTFSWFSXJMMSFTVMUJOVOEFpOFECFIBWJPSSFGTIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOBWGPVOEBUJPOBWQMBZFSBEEQFSJPEJDUJNFPCTFSWFSGPSJOUFSW MBOHVBHFPCKD
ϓϩάϥϛϯάͷ͓࡞๏w SFHJTUFSͨ͠ΒVOSFHJTUFS͠ͳ͚ΕͳΒͳ͍
ͭ·Γ/4/PUJpDBUJPO$FOUFSͷBEE0CTFSWFSSFNPWF0CTFSWFS͠ͳͯ͘ྑ͘ͳ͚ͬͨͲɺϓϩάϥϛϯάͷ͓࡞๏ͱͯ͠ྑ͘ͳ͍ʂʂ
/4/PUJpDBUJPO$FOUFS ͦΕҎ֎ͷΫϥεSFNPWF0CTFSWFS͠ͳ͍ ͳ͠ ͋ΓSFNPWF0CTFSWFS͢Δ ͳ͠ ͳ͠දʹ͢Δͱ
ࢲͨͪͷνʔϜͰw SFHJTUFSVOSFHJTUFS BEESFNPWF0CTFSWFS͓࡞๏w /4/PUJpDBUJPO$FOUFS͚ͩྫ֎ͷঢ়ଶͰΉ͠ΖଞͷΫϥεͰؒҧ͑ΔڪΕ͕͋Δw ͳͷͰSFNPWF0CTFSWFSΛৗʹॻ͘ํʹͱ͍͏͔BEE0CTFSWFS'PS/BNFPCKFDURVFVFVTJOH#MPDLΛ͏͜ͱʹ
·ͱΊw "1*ͷΠϯλϑΣʔεͦΕ͚ࣗͩͰͳ͘ଞͷΫϥεϑϨʔϜϫʔΫ͔ΒܾΊΔ͖w ͳͷͰɺ͋Δ"1*ͷ༻ํ๏͕มΘ͔ͬͨΒͱ͍ͬͯଞͷΫϥεͱͷؔ࿈ʹҙ͖͢w ͦͷ্ͰࣗͷϓϩδΣΫτʹͲ͏औΓΉ͔ܾΊ·͠ΐ͏