結構模型 介紹下runtime的內存模型(isa谅辣、對象、類咧七、metaclass抹镊、結構體的存儲信息等) 為什么要設計metaclass元類保存了類方法的列表 class_cop...
寫不好的原因 1、太多cell一個聊天的界面可能有很多不同的cell苍狰,基礎的可能就有 文字 圖片 語音 視頻 地理位置 視頻 時間 跟業(yè)務綁定的就更多了办龄,紅包、系統(tǒng)提示語淋昭、分...
手機在使用過程中有時需要實時響應玷禽,有時又不需要赫段。runloop的狀態(tài)就是為了調節(jié)這些切換呀打。比如滑動模式下矢赁,會把沒有加入到此模式下的定時器跳過,這樣響應會很快贬丛。
架構:簡單的說架構就是一個藍圖,是一種設計方案恭应,將客戶的不同需求抽象成為抽象組件抄邀,并且能夠描述這些抽象組件之間的通信和調用。 框架:軟件框架是項目軟件開發(fā)過程中提取特定領域軟...
重復代碼的提煉冗長方法的分割嵌套條件分支的優(yōu)化去掉一次性的臨時變量消除過長參數(shù)列表提取類或繼承體系中的常量讓類提供應該提供的方法拆分冗長的類提取繼承體系中重復的屬性與方法到父...
原則一:開閉原則(Open Close Principle)原則二:單一職責原則(Single Responsibility Principle)原則三:依賴倒置原則(Dep...
主要還是數(shù)據(jù)流向的不同。 https://blog.csdn.net/victoryzn/article/details/78392128http://www.ruanyif...
全局: const,只讀的全局變量,其值不可修改. static,規(guī)定此全局變量只在當前模塊(文件)中可見. static const,既是只讀的,又是只在當前模塊中可見的....
解決函數(shù)調用效率的問題:函數(shù)之間調用环鲤,是內存地址之間的調用,當函數(shù)調用完畢之后還會返回原來函數(shù)執(zhí)行的地址憎兽。函數(shù)調用有時間開銷冷离,內聯(lián)函數(shù)就是為了解決這一問題。不用inline修...
中間人攻擊 HTTPS抓包的原理還是挺簡單的西剥,簡單來說,就是Charles作為“中間人代理”扎附,拿到了 服務器證書公鑰 和 HTTPS連接的對稱密鑰蔫耽,前提是客戶端選擇信任并安裝...
1) 對稱加密加密與解密使用的是同樣的密鑰匙铡,所以速度快,但由于需要將密鑰在網(wǎng)絡傳輸碍粥,所以安全性不高鳖眼。(2) 非對稱加密使用了一對密鑰,公鑰與私鑰嚼摩,所以安全性高钦讳,但加密與解密速...
為了防止已失效的連接請求報文段突然又傳送到了服務端,因而產(chǎn)生錯誤愿卒。client發(fā)出的第一個連接請求報文段并沒有丟失缚去,而是在某個網(wǎng)絡結點長時間的滯留了,以致延誤到連接釋放以后的...
1易结、優(yōu)化DNS解析和緩存2、網(wǎng)絡質量檢測(根據(jù)網(wǎng)絡質量來改變策略)3柜候、提供網(wǎng)絡服務優(yōu)先級和依賴機制4搞动、提供網(wǎng)絡服務重發(fā)機制5、減少數(shù)據(jù)傳輸量6渣刷、優(yōu)化海外網(wǎng)絡性能 實踐每個網(wǎng)絡...
分cpu卡和gpu卡頓辅柴。 主線程耗時操作線程爆炸滑動頁面渲染卡頓(離屏渲染)圖像渲染解碼 查看xcode的cpu占用箩溃。使用instrument 查看耗時代碼。查看渲染耗時問題碌识。
1筏餐、NSInvalidArgumentException 異常向容器加入nil开泽,引起的崩潰。hook容器添加方法魁瞪,進行判斷穆律。https://github.com/jasenh...
無痕埋點就是記錄所有的事件峦耘,需要的時候去查詢÷帽。可分為兩種 用戶點擊事件 button 手勢的點擊辅髓,這個可以hook相關的方法,addtarget 等少梁,去埋點洛口,通過view獲取...
App啟動過程 解析Info.plist加載相關信息凯沪,例如如閃屏沙箱建立第焰、權限檢查 Mach-O加載 如果是胖二進制文件,尋找合適當前CPU類別的部分 加載所有依賴的Mach...