后臺(tái)Crash 蘋果在 WWDC 2020 上的介紹,目前會(huì)導(dǎo)致App在后臺(tái)被殺死的情況大概有以下 6 種。 1、崩潰(Crashes) 代碼邏輯的Crash引發(fā)App閃退。...
后臺(tái)Crash 蘋果在 WWDC 2020 上的介紹,目前會(huì)導(dǎo)致App在后臺(tái)被殺死的情況大概有以下 6 種。 1、崩潰(Crashes) 代碼邏輯的Crash引發(fā)App閃退。...
單元測(cè)試 單元測(cè)試(Unit Testing)又稱為模塊測(cè)試,是針對(duì)程序模塊來進(jìn)行正確性檢驗(yàn)的測(cè)試工作。單元就是單個(gè)程序、函數(shù)、過程等,編寫程序的過程中前后很可能要進(jìn)行多次單...
虛擬內(nèi)存 虛擬內(nèi)存是計(jì)算機(jī)系統(tǒng)內(nèi)存管理的一種技術(shù),虛擬內(nèi)存為每個(gè)進(jìn)程提供了一個(gè)連續(xù)、私有的地址空間,它每個(gè)進(jìn)程會(huì)認(rèn)為自己在使用一塊大的連續(xù)的內(nèi)存。事實(shí)上,每個(gè)進(jìn)程的內(nèi)存散布在...
編譯過程 傳統(tǒng)編譯過程一般分為以下步驟。 源代碼(source code)→ 預(yù)處理器(preprocessor)→ 編譯器(compiler)→ 匯編程序(assemble...
定義 用iOS開發(fā)環(huán)境來舉例,IoC容器的核心功能負(fù)責(zé)對(duì)象創(chuàng)建、依賴查找和依賴注入,這些功能都需要借助運(yùn)行時(shí)runtime的反射實(shí)現(xiàn) 使用protocol 在IoC容器中,就...
定義 控制反轉(zhuǎn)(Inversion of Control,縮寫為IoC),是面向?qū)ο缶幊讨械囊环N設(shè)計(jì)原則,可以用來減低計(jì)算機(jī)代碼之間的耦合度。 傳統(tǒng)意義上,Class A中用...
建立組件工程 建立主workspace工程與組件的pod工程如(podLibTest) 多個(gè)模式共存 源碼模式的podspec arc與non arc共存問題在組件工程比較好...
podspec文件 建立CocoaPods私有源的關(guān)鍵是編寫.podspec文件,此文件是CocoaPods所使用的一種特殊,例子可以參考以下源碼。 創(chuàng)建Spec Repo ...
CocoaPods簡(jiǎn)介 CocoaPods是Swift和Objective-C 項(xiàng)目的依賴管理器。它擁有超過61000個(gè)第三方庫(kù),超過300萬(wàn)個(gè)應(yīng)用程序都使用CocoaPod...
設(shè)置高度的方式 UITableView的高度設(shè)置一般有以下兩種方式:方式一 方式二 如果實(shí)現(xiàn)了以上方法后,通過rowHeight 的設(shè)置是無效的。第二種方式適用于具有多種 c...
常見的Crash unrecognized selector sent to class 是iOS編程中常見的錯(cuò)誤,從之前博文可知,iOS的方法調(diào)用最終會(huì)轉(zhuǎn)化為消息發(fā)送過程...
方法調(diào)用的方式 在iOS開發(fā)中,直接調(diào)用方法的方式有以下兩種: (id)performSelector:(SEL)aSelector 使用NSInvocation對(duì)象 per...
安全問題 首先App的安全問題主要包括以下三個(gè)方面 本地代碼安全可以通過代碼混淆,關(guān)鍵字符串或者重要變量加密;通過加殼防止二次打包 本地?cái)?shù)據(jù)存儲(chǔ)持久化數(shù)據(jù)的加密,盡量不要保存...
常用緩存策略 常用的緩存淘汰策略有以下 先進(jìn)先出算法(FIFO) Least Frequently Used(LFU)淘汰一定時(shí)期內(nèi)被訪問次數(shù)最少的頁(yè)面,以次數(shù)作為參考 Le...
畫圖 在iOS中實(shí)現(xiàn)繪圖的技術(shù)的話,比較通用的做法是,在onTouch事件中收集到軌跡坐標(biāo)點(diǎn)數(shù)據(jù),然后在UIView中的drawInRect方法里面繪制每一幀畫面。在draw...
板凳
autorelease與autoreleasepoolMRC 使用ARC,開發(fā)者不再需要手動(dòng)的retain/release/autorelease。編譯器會(huì)自動(dòng)插入對(duì)應(yīng)的代碼,再結(jié)合Objective C的runtime,實(shí)現(xiàn)自...
MRC 使用ARC,開發(fā)者不再需要手動(dòng)的retain/release/autorelease。編譯器會(huì)自動(dòng)插入對(duì)應(yīng)的代碼,再結(jié)合Objective C的runtime,實(shí)現(xiàn)自...
鎖 多線程中,鎖大部分可以分成兩種,互斥鎖與自旋鎖。 互斥鎖 Mutex互斥鎖也稱互斥量 ,屬于sleep-waiting類型的鎖,當(dāng)線程訪問被鎖資源時(shí),調(diào)用者線程會(huì)休眠,此...