在開發(fā)過程中,必然會遇到的需求就是多環(huán)境配置 氏捞。比如我們平時(shí)的開發(fā)環(huán)境/測試環(huán)境/預(yù)發(fā)布環(huán)境/正式環(huán)境等等普筹。不同的環(huán)境一般會有不同的接口地址等等...
KVC是我們在開發(fā)過程中經(jīng)常會用到的東西,但是很多時(shí)候面哼,只是使用野宜,不求甚解。那么我們今天來探索一下 -- KVC 什么是KVC魔策? KVC全稱是K...
在我們開始接觸到runtime之后匈子,我們經(jīng)常能見到Method-Swizzling這個(gè)被稱作 黑魔法 的東西,那么到底什么是Method-Swi...
引子 在我們之前探索dyld流程時(shí)闯袒,我們發(fā)現(xiàn)其實(shí)dyld和objc_init()之間是存在聯(lián)系的虎敦。 iOS底層探索 -- dyld 流程分析[h...
前言 之前,我們研究了很多關(guān)于iOS底層相對零碎的知識政敢。而iOS對用戶來說其徙,最重要的就是每一個(gè)APP。今天喷户,我們來研究一下APP的啟動入口唾那。 首...
上一期在objc_msgSend()的慢速查找 lookUpImpOrForward流程中如果一直沒有找到方法,那流程會走向resolveMet...
上一期中褪尝,我們研究了objc_msgSend()中的快速查找流程闹获,在流程最后除了命中緩存的CacheHit以外,會轉(zhuǎn)入CheckMiss或者Ju...
引子:我們在很早時(shí)候就聽過OC是一個(gè)運(yùn)行時(shí)語言恼五,那么什么是運(yùn)行時(shí)昌罩? 引入兩個(gè)概念,編譯時(shí) 和 運(yùn)行時(shí) 編譯時(shí) :顧名思義就是正在編譯的時(shí)候 . ...
在我們探索class的底層時(shí)灾馒,我們追蹤到objc_class的源碼茎用,其中重要結(jié)構(gòu)為 可以看出四個(gè)最重要的模塊 isa (注釋掉并不是說沒有,只是...