該文章屬于劉小壯原創(chuàng),轉(zhuǎn)載請注明:劉小壯[http://www.itdecent.cn/u/2de707c93dc4] 需求 日志對于線上排查問題是非常重要的,很多問題其實(shí)...
該文章屬于劉小壯原創(chuàng),轉(zhuǎn)載請注明:劉小壯[http://www.itdecent.cn/u/2de707c93dc4] 需求 日志對于線上排查問題是非常重要的,很多問題其實(shí)...
前言 由于前期趕項(xiàng)目,所以在項(xiàng)目中難免多了一些bug,最近項(xiàng)目閑了下來,為了能夠快速定位到線上版本bug位置,經(jīng)過比較之后,決定使用騰訊家的Bugly。keywords: B...
你這個編譯的過嗎?
Swift 環(huán)形鏈表- LeetCode題目: 環(huán)形鏈表[https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/6...
最近研究一些算法, 入門的就是斐波那契數(shù)列 如果你問什么是斐波那契數(shù)列? 既然你誠心誠意的發(fā)問了, 我就大發(fā)慈悲的告訴你! 斐波那契數(shù)列, 又稱黃金分割序列 ( 0.0很高...
1. cache的結(jié)構(gòu) 我們之前探索過Class的結(jié)構(gòu)以及其內(nèi)部的成員,其中了解到了isa,superClass以及bits的作用,但是剩下的cache,我們只能基本知道,其...
@翀鷹精靈 我不知道咋跑起來,我下載了跑不起來
iOS - GNUstep(查看Foundation源碼)作為iOS開發(fā),大家都知道iOS是閉源的,我們只能看到頭文件,而看不到里面的實(shí)現(xiàn)。網(wǎng)上有部分iOS開源的代碼,如:Runtime的開源代碼。objc-runtime部分類截圖...
可以編譯跑起來嗎?
iOS - GNUstep(查看Foundation源碼)作為iOS開發(fā),大家都知道iOS是閉源的,我們只能看到頭文件,而看不到里面的實(shí)現(xiàn)。網(wǎng)上有部分iOS開源的代碼,如:Runtime的開源代碼。objc-runtime部分類截圖...
作為iOS開發(fā),大家都知道iOS是閉源的,我們只能看到頭文件,而看不到里面的實(shí)現(xiàn)。網(wǎng)上有部分iOS開源的代碼,如:Runtime的開源代碼。objc-runtime部分類截圖...
如果想詳細(xì)了解Swift中的Foundation框架,可以參考apple的開源庫swift-corelibs-foundationhttps://github.com/app...
即將離開簡書,請到掘金繼續(xù)關(guān)注我。謝謝! 本文掘金鏈接[https://juejin.cn/post/6875140053635432462] 為什么離開[https://w...
編譯階段 下面是編譯階段生成的類信息: 根據(jù)上面編譯器生成的數(shù)據(jù),可以得到一些信息: class Swift類編譯階段會生成與Objective-C一樣的類元數(shù)據(jù),這也是為什...
喜歡楊宗緯已是陳年舊事,但《懷珠》這首歌,不同于其他反復(fù)傳唱的歌曲,不論在初次聽到,反復(fù)多次之后仍覺得頭皮發(fā)麻,是一首過于驚艷的冷作。 01 ...
一個最基本的遵循HandyJSON的模型的實(shí)現(xiàn)如下: 需要的數(shù)個步驟分別為遵循HandyJSON協(xié)議,根據(jù)協(xié)議實(shí)現(xiàn)init方法,以及最后的調(diào)用協(xié)議方法解析JSON字符串填充模...
1. __weak使用 1.1 ARC以后引入了__weak的概念來修飾Objective-C對象,使用這個關(guān)鍵字修飾的對象,對象的引用計(jì)數(shù)不會+1,這個關(guān)鍵字和__unsa...
Swift 進(jìn)階之路 文章匯總[http://www.itdecent.cn/p/5fbedf309237] 本文主要是分析Mirror的底層實(shí)現(xiàn),以及根據(jù)Mirror底層...
var kind: Int
var superclass: Any.Type?
var reserveword1: Int
var reserveword2: Int
var rodataPointer: UInt
var classFlags: UInt32
var instanceAddressPoint: UInt32
var instanceSize: UInt32
var instanceAlignmentMask: UInt16
var runtimeReservedField: UInt16
var classObjectSize: UInt32
var classObjectAddressPoint: UInt32
var nominalTypeDescriptor: Int
var ivarDestroyer: Int
這是handyJson中的class屬性,樓主少了一個rodataPointer?
Swift編譯流程 & Swift類前言 本篇文章會大致分析一下swift的編譯流程,這個作為了解即可,然后會重點(diǎn)分析一下swift中類的結(jié)構(gòu),這個知識點(diǎn)我們需要掌握。 一、swift編譯流程 1.1 LLVM...
前言 本篇文章會大致分析一下swift的編譯流程,這個作為了解即可,然后會重點(diǎn)分析一下swift中類的結(jié)構(gòu),這個知識點(diǎn)我們需要掌握。 一、swift編譯流程 1.1 LLVM...
獲取class和strut中的屬性和屬性類型能講透徹點(diǎn)嗎?
HandyJSON淺析(一)HandyJSON的基本原理就是從類信息里獲取所有屬性的特征,包括名稱,屬性在內(nèi)存里的偏移量、屬性的個數(shù)、屬性的類型等等,然后將服務(wù)端返回來的數(shù)據(jù)用操作內(nèi)存的方式將數(shù)值寫入對...
本文不涉及如何使用,僅對齊實(shí)現(xiàn)原理作一個記錄。 前置條件 Swift中,一個類實(shí)例的內(nèi)存布局是有規(guī)律的: 32位機(jī)器上,類前面有4+8個字節(jié)存儲meta信息,64位機(jī)器上,有...