初學者必看文檔:iPhone開發之路學習基礎
iPhone開發之路學習基礎是本文要介紹的內容,主要介紹了iphone中的代理類、iPhone的基本設計模式的內容,一起來看詳細內容介紹。
談談代理類(delegate class)
程序的代理對象是開發者自己實現的對象,主要負責監聽程序的高級行為。代理機制用于避免繼承復合UIKit對象(例如UIApplication對象)。使用代理不需要子類繼承或重寫父類的方法,只要保持復合對象不變,將需要添加或重寫的代碼放到代理對象中。當有事件發生,復合對象會發送消息給代理對象。 這有點像“鉤子”,通過這些“鉤子”來執行代碼和實現需要的行為。
程序代理負責處理很多重要的系統消息沒一個iPhone程序都必須有。這個對象可以是任何實現了UIApplicationDelegate協議(protocol)的對象的實例,UIApplicationDelegate協議在程序生命周期內定義了很多“鉤子”和實現自定義行為的方法。盡管不要求開發者實現所有這些方法,但是下面這些方式是必須實現的:
applicationDidFinishLaunching :開發者可以用在這個方法中完成自定義的初始化任務,比如加載數據或用戶界面;也可以恢復程序上一次退出時的狀態。
applicationWillTerminate :開發者可以在這個方法中將重要的數據和程序狀態保存起來,也可以再這個方法中進行清理工作比如刪除臨時文件。
iPhone的基本設計模式
UIKit框架的設計采用了很多和Cocoa程序類似的設計模式。理解這些設計模式對開發iPhone程序非常重要。因此在學習開發iPhone程序前,有必要了解一下iPhone開發中常用的設計模式。
iPhone應用程序中的基本設計模式包括:
MVC模式(Model-View-Controller)
MVC模式是將你的代碼風格成獨立的功能模塊的良好方法。模型(Model)部分定義了底層數據引擎并負責維護這些數據的整合;視圖(View)部分定義了用戶界面,它并不知道顯示在界面上的原始數據的具體含義;控制器(Controller)部分像是模型和視圖之間的一坐橋梁,負責更新它們。
代理(Delegation)
代理模式是一種可以不必通過繼承卻可以改變復合類行為的途徑。你可以將你的用于改變復合類行為代碼放到單獨的代理對象中有復合類來調用,而不必去繼承。復合類會調用代理對象中的方法從而給它一次運行自己代碼的機會來更改復合類的行為。
目標-行動(Target-Action)
控件(Controls)采用目標-行動模式來提醒程序用戶的交互。當用戶按照預定義的方式與某個控件交互時(例如按了某個按鈕),控件會發送一個消息(動作)給指定的對象(目標)。當收到消息時,目標對象根據消息采用相應的方式進行響應(例如更新程序狀態來響應按鈕點擊)。
管理內存模型(Managed Memory Model)
Objective-C采用"引用計數"的方式來決定合適清理對象所占的內存。當對象初次創建時,它的引用計數為1。其他對象可以調用改對象的retain, release 或 autorelease方法增加或減少此組件的引用計數。當對象的引用計數為0時,Objective-C運行環境會清理掉該對象所占的內存。
小結:iPhone開發之路學習基礎(初學者必看文檔)的內容介紹完了,希望通過本文的學習能對你有所幫助!