iOS編碼需要注意的幾點問題
- 所有邏輯判斷需要新增註釋說明。
- 所有變數、常量需要新增註釋說明。
- 從網上拿到的資料最好先做非空轉換,將資料插入陣列或字典時做非空轉換。
- delegate 物件使用 weak,禁止使用 strong。
- 單一職責原則:一個類只能幹一個事情,一個方法最好也只幹一件事情。不允許一個方法既處理邏輯,又繪製UI。
健壯性
是否考慮執行緒安全
邊界處理是否完整
邏輯是否健壯
是否有記憶體洩漏
有沒有迴圈引用
有沒有野指標碰到新增陰影時,注意效能。
- 按鈕獨佔事件要新增,防止多個按鈕同時點選的情況出現。
- 當一個介面有push和pop的時候,兩個操作相隔時間很短,一個動畫未結束,另外一個動畫已經開始,導致動畫衝突crash,應新增如下程式碼
if (self.navigationController.topViewController != self){} - 載入一次性大圖片並且不在tableview中使用時用imageWithContentsOfFile(如新版本引導頁,背景大圖片等不需要一直放在應用快取中的圖片)。小圖片或者在tableview中使用的圖片可以用imageNamed。
- 注意做好單元測試,保證在頁面返回時執行到dealloc方法
- 在做writeToFile讀寫操作時,記得加try catch或者執行緒鎖,防止多執行緒同時修改和寫入同一個檔案導致Crash
- 頁面退出時,要將定時器關閉,將通知關閉。
- 使用block不可以持有self,如果在block中有執行self方法或者屬性,必須先將self置為weak,在block內建為strong。
- 在控制器回退時,如果控制器中有NSTimer倒數計時,必須將倒數計時關閉
- 子檢視引用父檢視時,要使用weak,不允許使用strong而導致迴圈引用。
相關文章
- IBM面試需要注意的幾個問題IBM面試
- itm UA編寫注意的幾個問題
- 做聚合支付代理需要注意的這幾個問題?
- 11gRAC安裝需要注意的幾個問題
- 資料補丁中需要注意的幾個問題
- vmware搭建HMC需要注意的幾個點
- iOS程式設計師面試要注意的幾個問題~iOS程式設計師面試
- 搭建前後需要注意哪幾點?
- 遊戲伺服器需要注意的三點安全問題遊戲伺服器
- 使用NoSQL前需要認清的幾點問題PHSQL
- Spring事務需要注意的幾個點Spring
- 網路爬蟲設計中需要注意的幾個問題爬蟲
- 教育網站原始碼:網校系統搭建服務需要注意的幾個問題網站原始碼
- Python面試中需要注意的幾點事項!Python面試
- 伺服器打補丁需要注意的幾點伺服器
- 開發者提交產品前需要注意的幾個點
- 成功接專案需要注意的幾個要點
- 10個需要注意的SQL問題SQL
- 配置Oracle RAC需要注意的問題Oracle
- iOS APNs的幾個問題iOS
- MYSQL索引建立需要注意以下幾點細節MySql索引
- 伺服器儲蓄需要注意幾點呢伺服器
- 幾點需要注意選擇APP開發外包團隊的注意事項APP
- 構建高效能的介面模組需要注意的幾點
- 應用 Laravel 的軟刪除你需要注意的幾點Laravel
- 在你編碼之前需要分析的一些問題
- iOS Url特殊符號編碼問題iOS符號
- Oracle remap_schema需要注意的問題OracleREM
- 安裝rac時需要注意的問題
- Python初學者需要注意的問題Python
- 檔案上傳需要注意的問題
- insert append需要注意的問題APP
- SQL SERVER建立索引需要注意的問題SQLServer索引
- 複製資料庫中需要注意的幾點事項資料庫
- 開發網校原始碼時應該注意的幾個問題原始碼
- DevSecOps五個需要關注的編碼問題dev
- netty系列之:自定義編碼和解碼器要注意的問題Netty
- 資料治理需要注意哪些問題