前言: 按照時(shí)間順序,事件的生命周期是這樣的:事件的產(chǎn)生和傳遞(事件如何從父控件傳遞到子控件并尋找到最合適的view、尋找最合適的view的底層實(shí)現(xiàn)、攔截事件的處理)->找到...
上一篇文章iOS底層原理總結(jié) - 探尋block的本質(zhì)(一)中已經(jīng)介紹過(guò)block的底層本質(zhì)實(shí)現(xiàn)以及了解了變量的捕獲,本文繼續(xù)探尋block的本質(zhì)。 block對(duì)對(duì)象變量的捕...
應(yīng)用程序加載過(guò)程 對(duì)于諸多逆向愛好者來(lái)說(shuō),給一個(gè)app脫殼是一項(xiàng)必做的事情?;诎踩缘目紤],蘋果對(duì)上架到appstore的應(yīng)用都會(huì)進(jìn)行加密處理,所以如果直接逆向一個(gè)從app...
對(duì)小碼哥底層班視頻學(xué)習(xí)的總結(jié)與記錄。面試題部分,通過(guò)對(duì)面試題的分析探索問(wèn)題的本質(zhì)內(nèi)容。 問(wèn)題iOS用什么方式實(shí)現(xiàn)對(duì)一個(gè)對(duì)象的KVO?(KVO的本質(zhì)是什么?)如何手動(dòng)觸發(fā)KVO...
面試題 block的原理是怎樣的?本質(zhì)是什么? __block的作用是什么?有什么使用注意點(diǎn)? block的屬性修飾詞為什么是copy?使用block有哪些使用注意? blo...
Class的結(jié)構(gòu) 通過(guò)上一章中對(duì)isa本質(zhì)結(jié)構(gòu)有了新的認(rèn)識(shí),今天來(lái)回顧C(jī)lass的結(jié)構(gòu),重新認(rèn)識(shí)Class內(nèi)部結(jié)構(gòu)。 首先來(lái)看一下Class的內(nèi)部結(jié)構(gòu)代碼,對(duì)探尋Class的...
isa的本質(zhì) 在學(xué)習(xí)Runtime之前首先需要對(duì)isa的本質(zhì)有一定的了解,這樣之后學(xué)習(xí)Runtime會(huì)更便于理解。 回顧OC對(duì)象的本質(zhì),每個(gè)OC對(duì)象都含有一個(gè)isa指針,__...
前言 經(jīng)典操作系統(tǒng)的虛擬內(nèi)存為什么要有虛擬內(nèi)存?尋址方式地址空間分頁(yè)缺頁(yè)處理虛擬內(nèi)存帶來(lái)的好處地址翻譯如何索引提高效率減少內(nèi)存現(xiàn)代 OS 虛擬內(nèi)存系統(tǒng)內(nèi)存映射 MMAPMMA...
入職以來(lái)一直負(fù)責(zé)SDK的開發(fā)工作。從第一個(gè)版本一直到現(xiàn)在,期間遇到了不少問(wèn)題,踩過(guò)不少坑,也對(duì)接過(guò)不少集團(tuán)內(nèi)部SDK,對(duì)SDK開發(fā)也算有點(diǎn)微薄經(jīng)驗(yàn)。本篇文章沒啥干貨,都是我在...
前言 每年的 WWDC 都是 iOS 開發(fā)者集體高潮的時(shí)刻。第一天的 WWDC 帶來(lái)了全新的 iOS 11、MacOS、tvOS 和 watchOS,革命性的 AR 和 ML...