引入 在 OC底層原理18-分類的加載[http://www.itdecent.cn/p/26af6e499f6c] 中,我們探究了分類的加載時機,得出分類和類在是否實現(xiàn)l...
引入 在 OC底層原理18-分類的加載[http://www.itdecent.cn/p/26af6e499f6c] 中,我們探究了分類的加載時機,得出分類和類在是否實現(xiàn)l...
引入 在 OC底層原理17-類的加載[http://www.itdecent.cn/p/94b171fad125] 中,我們留下了2個問題,attachCategories...
前面研究了dyld的加載流程和dyld與objc的關(guān)聯(lián),我們已經(jīng)知道,代碼會被編譯成macho文件,那怎么把macho里面的數(shù)據(jù)格式加載到內(nèi)存的呢? 上一篇 OC底層原理16...
iOS 底層原理 文章匯總[http://www.itdecent.cn/p/412b20d9a0f6] 本文的主要目的是理解dyld與objc是如何關(guān)聯(lián)的 在上一篇文章i...
引入在 OC底層原理15-dyld加載流程[http://www.itdecent.cn/p/3a238256a190] 中,我們初步窺探了dyld的加載流程:_dyld_...
前言 在開發(fā)中,我們做的很多事情都是main函數(shù)之后的,那main之前Xcode為我們做了哪些事呢? 當(dāng)我們用Xcode連接真機或者模擬器運行應(yīng)用程序的的時候,都會有一個生成...
我們在 OC底層原理13-動態(tài)方法決議[http://www.itdecent.cn/p/a7550ccefae7] 一文中,分析了動態(tài)方法決議,調(diào)試的時候發(fā)現(xiàn)resolv...
我們在 OC底層原理12-lookUpImpOrForward源碼分析(方法查找慢流程)[http://www.itdecent.cn/p/740ee19690c3] 一文...
我們在 C底層原理11-objc_msgSend源碼分析(方法查找快流程)[http://www.itdecent.cn/p/62ecc3f31467] 一文中,探索了ob...
我們在 OC底層原理10-cache_t分析(插入流程) 一文中探索了cache的插入流程,那cache是誰來讀取的呢?又是怎么讀取的呢?這就是本次研究的重心:objc_ms...
在 OC底層原理07-類的結(jié)構(gòu)分析 這篇文章中,我們研究了objc_class中的superclass、bits,今天這篇補充研究當(dāng)時被忽略的cache_t 一、準備工作 1...
一、準備工作 objc4可編譯源碼,可直接跳到文章最后,下載調(diào)試好的源碼 isa走位圖,繼承關(guān)系圖 二、查看源碼分析流程 2.1 isKindOfClass 源碼 isKin...
一、準備工作 objc4可編譯源碼,可直接跳到文章最后,下載調(diào)試好的源碼 在源碼中創(chuàng)建類GomuPerson 二、通過runtime的api拿方法、屬性、成員變量 2.1 通...
1、對象底層之a(chǎn)lloc&init&new源碼分析+三種探索方式OC底層原理01-alloc流程探索[http://www.itdecent.cn/p/7b1e350861...
一、類的本質(zhì) 在《OC底層原理04-對象的本質(zhì)》那篇文章中,我們講到了如何將.m文件編譯成.cpp文件查看底層結(jié)構(gòu),這里就不作過多贅述 1.1 在cpp文件找查找Class的...
一、回顧 上一期OC底層原理05-isa結(jié)構(gòu)分析中,我們在GomuPerson的實例對象person的地址中,拿到第一位地址中的isa,進行逆向推導(dǎo)isa&mask得到Gom...