
在開發過程中,必然會遇到的需求就是多環境配置 。比如我們平時的開發環境/測試環境/預發布環境/正式環境等等。不同的環境一般會有不同的接口地址等等...
KVC是我們在開發過程中經常會用到的東西,但是很多時候,只是使用,不求甚解。那么我們今天來探索一下 -- KVC 什么是KVC? KVC全稱是K...
在我們開始接觸到runtime之后,我們經常能見到Method-Swizzling這個被稱作 黑魔法 的東西,那么到底什么是Method-Swi...
引子 在我們之前探索dyld流程時,我們發現其實dyld和objc_init()之間是存在聯系的。 iOS底層探索 -- dyld 流程分析[h...
前言 之前,我們研究了很多關于iOS底層相對零碎的知識。而iOS對用戶來說,最重要的就是每一個APP。今天,我們來研究一下APP的啟動入口。 首...
上一期在objc_msgSend()的慢速查找 lookUpImpOrForward流程中如果一直沒有找到方法,那流程會走向resolveMet...
上一期中,我們研究了objc_msgSend()中的快速查找流程,在流程最后除了命中緩存的CacheHit以外,會轉入CheckMiss或者Ju...
引子:我們在很早時候就聽過OC是一個運行時語言,那么什么是運行時? 引入兩個概念,編譯時 和 運行時 編譯時 :顧名思義就是正在編譯的時候 . ...
在我們探索class的底層時,我們追蹤到objc_class的源碼,其中重要結構為 可以看出四個最重要的模塊 isa (注釋掉并不是說沒有,只是...