使用終端生成R.generated.swift文件 (注意:無論何時都是借助終端或xcode腳本生成,絕不是手動修改) 為什么終端生成,XCod...
實用技巧: 技巧1:使用擴展組織代碼 (只放短小的計算屬性) 技巧2:使用內(nèi)部枚舉 技巧3:使用計算屬性替代方法 ?? 重構(gòu)原則總結(jié) 每個方法只做...
ViewModel 重構(gòu)檢查清單 識別壞味道: 1.直接訪問全局變量(kIsVip) 2.一個類承擔(dān)了太多職責(zé)(數(shù)據(jù)處理,插入廣告,Vip狀態(tài))...
一句話總結(jié):Mock 就是在測試時,用一個可控的假對象代替真實的外部依賴,讓測試更專注、更可靠 Mock 是模擬的意思,是軟件測試中的一個重要概...
泄露分類型,其中定時器屬于活引用泄露,對象被意外強引用(如Timer),Leaks無法檢測,因此我們使用 一. 難以檢測的定時器泄露: 檢測難點...
1. 要在真機或release模式下的運行的模擬器,debug模式下結(jié)果不準 2. command+I 調(diào)出面板,選擇Leaks,點擊開始錄制,...
??記住 Memory Graph 的核心作用: 可視化 對象間的引用關(guān)系 快速發(fā)現(xiàn) 循環(huán)引用 無需停止應(yīng)用 實時查看 ?? 總結(jié):如何“看懂”Me...
干貨篇 這里我用GPUImage作為例子。 首先你應(yīng)該去github下載源碼,然后把里面的xx.xcodeproj直接拉到你的項目文件中 之后就...
干貨篇 把profile中的注釋刪掉換成下面這種, 然后保存 platform :ios, ’10.0’ # 告訴CocoaPods,你的...