1. 程式人生 > >關於iOS六大基本設計模式

關於iOS六大基本設計模式

iOS,系統框架為應用程式提供了最重要的基礎設施,在大多數情況下,只能通過系統框架來呼叫底層的硬體。反過來,框架也使用了很多特別的設計模式,iOS開發應用程式前,必須要了解它的六大基本設計模式。

    (1)Model-View-Controller,即模型-檢視-控制器模式,是iOS程式的主要構架,將您的程式碼分割為幾個獨立的部分。模型部分定義應用程式的資料引擎,負責維護資料的完整性;檢視部分定義應用程式的使用者介面,對顯示在使用者介面上的資料出處則沒有清楚的認識;控制器部分則充當模型和控制器的橋樑,幫助實現資料和顯示的更新。     (2)Delegation,即委託模式,這個設計模式有助於一個物件的資料傳輸到另一個物件。委託模式可以對複雜物件進行修改而不需要子類化。與子類化不同的是,您可以照常使用複雜物件,而將對其行為進行修改的定製程式碼放在另一個物件中,這個物件就稱為委託物件。複雜物件需要在預先定義好的時點上呼叫委託物件的方法,使其有機會執行定製程式碼。     (3)Target-action,這個設計模式用按鈕等控制元件把使用者的互動變成程式碼,讓程式可以執行。控制元件通過目標—動作模式將使用者的互動通知給您的應用程式。當用戶以預先定義好的方式(比如輕點一個按鍵)進行互動時,控制元件就會將訊息(動作)傳送給您指定的物件(目標)。接收到動作訊息後,目標物件就會以恰當的方式進行響應。     (4)Protocol,可以認為是java中的介面。在iOS中有兩種protocol。一種是正式的,一種是非正式的。正式的protocol,是對obj
c語言
的擴充套件。通過interface宣告,可以強制實現或者可選實現。非正式的protocol是NSObject的一個category,category是objc語言的一個特性,可以讓你為一個類增加方法而不需要實現子類。非正式protocol實現方法是可選的。     (5)notification,即一個通知,是一個訊息,是用於通知一到多個觀察者物件程式當前有一個事件發生。這裡,接收通知的一方叫觀察者,observer。實際上是觀察者模式。 這裡,傳送通知的物件,並不知道誰會收到這個通知。這樣通知者和觀察者之間鬆散耦合。     (6)declared properties,字面意思是宣告的屬性。自動幫新增get、set方法。