MVC
MVC:Model-View-Controller(模型-視圖-控制器),是 iOS 開發中頻繁使用的一種設計模式。設計模式
- Model 負責維護和處理數據,如網絡鏈接,數據計算與存儲等。除了 View 和 Controller 之外的全部內容都應該包含在 Model 中。(處理和保存數據)
- View 負責繪製界面,例如 UIButton、UIImageView、UITableView 等。View 應該儘量地不含業務邏輯。(繪圖視圖)
- Controller 具備對 Model 和 View 的引用,並監聽 Model 的更改。Controller 接收用戶的輸入,而後請求 Model 處理,並在檢測到對 Model 的更改時及時更新 View。(接受用戶輸入並鏈接視圖和模型)
經典圖
解讀
- Model 和 View 不能相互通訊,只能經過 Controller。
- Controller 能夠直接操做 Model(讀寫調用 Model),Model 經過 Notification 和 KVO 機制與 Controller 間接通訊。
- Controller 能夠經過 IBOutlet、IBAction 或 dataSource、delegate 操做 View。
項目結構
優勢
缺點
- 增長了系統結構和實現的複雜性。
- View 對 Model 的訪問效率便低。
- View 與 Controller 之間出現緊密的耦合。
其餘模式
總結
沒有最好的架構,只有最適合的架構。markdown
Xcode 快捷鍵
常見快捷鍵
- ⌘ + B:編譯。
- ⌘ + R:運行。
- ⌘ + U:測試。
- ⌘ + .:中止。
- ⌃ + ⌘ + E:重命名。
- ⌃ + I:代碼格式化。
- ⌃ + ⌘ + Click:跳轉到點擊內容的定義位置。
- ⌥ + ⌘ + /:添加文檔註釋。
- ⌘ + F:文件內查找。
- ⇧ + ⌘ + F:項目內查找。
- ⇧ + ⌘ + K:清理項目。
- ⌃ + ⌘ + → 和 ⌃ + ⌘ + ←:在最近打開的文件之間來回切換。
- ⌃ + ⌘ + ↑:生成當前文件的 interface。
- ⌘ + ⌥ + [ 和 ⌘ + ⌥ + ]:對選中代碼進行上下移動。
- ⌘ + \:在當前行上添加或刪除斷點。
- ⌃ + 6:快速查看當前文件的方法列表。
- ⌃ + ⌘ + R:不編譯直接運行(與QQ的錄屏衝突)。
圖標說明
⌃:control、 ⌘:command、 ⌥:option、 ⇧:shift網絡