Flutter 簡介 Flutter是Google發(fā)布的一個(gè)用于創(chuàng)建跨平臺(tái) 高性能移動(dòng)應(yīng)用框架,F(xiàn)lutter UI界面的渲染時(shí)基于Skia 2d渲染引擎,2015年在Dar...
Flutter 簡介 Flutter是Google發(fā)布的一個(gè)用于創(chuàng)建跨平臺(tái) 高性能移動(dòng)應(yīng)用框架,F(xiàn)lutter UI界面的渲染時(shí)基于Skia 2d渲染引擎,2015年在Dar...
Flutter渲染原理簡介 優(yōu)化之前我們先來介紹下Flutter的渲染原理,通過這部分基礎(chǔ)了解渲染流程以及主要耗時(shí)花費(fèi) flutter視圖樹包含了三顆樹:Widget、Ele...
本文主要介紹Swift中的內(nèi)存管理,涉及引用計(jì)數(shù)、弱引用、強(qiáng)引用、循環(huán)引用與Runtime等。 內(nèi)存管理-強(qiáng)引用 在Swift中也是使用ARC來追蹤和管理內(nèi)存的,下面我們通過...
本文主要介紹Swift中的指針 Swift中的指針主要分為兩類 typed pointer 指定數(shù)據(jù)類型的指針,即UnsafePointer<T>,其中T表示泛型 raw p...
本文主要介紹為什么結(jié)構(gòu)體是值類型,類是引用類型。 值類型 前提:需要了解內(nèi)存五大區(qū),內(nèi)存五大區(qū)可以參考這篇文章iOS底層原理:內(nèi)存五大區(qū)[https://www.jiansh...
本文主要對以下幾點(diǎn)進(jìn)行介紹: 通過SIL來理解對象的創(chuàng)建 Swift類結(jié)構(gòu)分析 存儲(chǔ)屬性 & 計(jì)算屬性 延遲存儲(chǔ)屬性 & 單例創(chuàng)建方式 SIL 在底層流程中,OC代碼和Swi...
編譯環(huán)境 macOS Big Sur 11.1 Xcode 12.2 Python 2.x brew install cmake ninja VSCode 編譯步驟 準(zhǔn)備工作...
GCD 簡介 GCD全稱是Grand Central Dispatch 純C語言,提供例如非常強(qiáng)大的函數(shù) 優(yōu)勢 GCD是蘋果公司為多核的并行運(yùn)算提出的解決方案 GCD會(huì)自動(dòng)利...
在iOS中,內(nèi)存主要分為棧區(qū)、堆區(qū)、全局區(qū)、常量區(qū)、代碼區(qū)五大區(qū)域。如下圖所示 棧區(qū)(Stack) 定義 棧是系統(tǒng)數(shù)據(jù)結(jié)構(gòu),其對應(yīng)的進(jìn)程或者線程是唯一的 棧是由高地址向低地址...
iOS 底層原理 文章匯總[http://www.itdecent.cn/p/412b20d9a0f6] KVC的全稱是Key-Value Coding,翻譯成中文是 鍵值...
_objc_init源碼解析 首先,我們先來看下libObjc中的_objc_init方法源碼: 根據(jù)源碼所知,主要分為以下幾部分配合源碼進(jìn)行說明: environ_init...
OC對象本質(zhì) 在探索oc對象本質(zhì)前,先了解一個(gè)編譯器:clang Clang Clang是一個(gè)由Apple主導(dǎo)編寫,基于LLVM的C/C++/Objective-C的輕量級(jí)編...
內(nèi)存對齊原則 數(shù)據(jù)成員對?規(guī)則:結(jié)構(gòu)(struct)(或聯(lián)合(union))的數(shù)據(jù)成員,第一個(gè)數(shù)據(jù)成員放在offset為0的地方,以后每個(gè)數(shù)據(jù)成員存儲(chǔ)的起始位置要從該成員大小...
iOS 底層原理 文章匯總[http://www.itdecent.cn/p/412b20d9a0f6] 在探討內(nèi)存對齊原理之前,首先介紹下iOS中獲取內(nèi)存大小的三種方式 ...
Metal 語言介紹 Metal 著?語? 是?來編寫 3D 圖形渲染邏輯 和 并?計(jì)算核?邏輯的 ??編程語?。 當(dāng)你使? Metal 框架來完成APP的實(shí)現(xiàn)時(shí),則需要使?...