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