首頁 > 眾包知識 > App開發 > IOS開發 >  iOS 開發規范和框架

iOS 開發規范和框架

2017/4/5 14:24:06      7094人閱讀      作者:來源網絡
    iOS為應用程序開發提供了許多可使用的框架,并構成IOS操作系統的層次架構,分為四層,從上到下依次為:Cocoa Touch Layer(觸摸UI層)、MediaLayer(媒體層)、Core Services Layer(核心服務層)、Core OS Layer(核心OS層)。以下是時間財富網小編整理的iOS 開發規范和框架。

    低層次框架提供IOS的基本服務和技術,高層次框架建立在低層次框架之上用來提供更加復雜的服務和技術,較高級的框架向較低級的結構提供面向對象的抽象。


    在開發應用時應盡可能使用較高級的框架。如果要開發的國內在高層框架中沒有提供,你也可以使用較低層框架和技術。
 

    Foundation和 UIKit框架是應用編程用到的兩個主要的框架,能夠滿足大多數應用程序的開發需求。


    UIKit框架提供的類,用于創建基于觸摸的用戶界面。所有 iOS 應用程序都是基于 UIKit, 沒有這個框架,就無法交付應用程序。UIKit提供應用程序的基礎架構,用于在屏幕上繪圖、處理事件,以及創建通用用戶界面及其中元素。UIKit還通過管理屏幕上顯示的內容,來組織應用程序。


    Foundation框架為所有應用程序提供基本的系統服務。應用程序以及 UIKit和其他框架,都是建立在 Foundation 框架的基礎結構之上。     Foundation框架提供許多基本的對象類和數據類型,使其成為應用程序開發的基礎。它還制定了一些約定(如用于取消分配等任務),使代碼更加一致,可復用性更好。


    CocoaTouch Layer包含創建ios應用關鍵的框架。該層包含的框架定義應用的外觀,也提供基本的應用基礎和關鍵的技術支持,例如多任務、觸摸輸入、推送通知和許多其它的高級系統服務。在開發應用時,應當首先研究該層的技術和技術看是否能夠滿足需要。


    Cocoa Touch Layer包含如下關鍵技術


    1).AirDrop


    AirDrop允許用戶與附近設備共享圖片、文檔、urls鏈接以及其它種類的數據。


    2)、Text Kit


    TextKit是處理文本和排版的一個全功能、高級別的類集合。使用Text Kit你能在段落、列或者頁上對帶有風格的文本進行布局;也能在任意區域(如圖形)周圍布局流動的文本;還能用它來管理多種字體。


    開發應用時應該首先考慮使用Text Kit來進行文本呈現,而不是Core Text。Text Kit與所有UIKit中的基于文本的控制集成允許應用更容易地創建、編輯、顯示和存儲文本。


    3)、UIKit Dynamics


    UIKit dynamics用來為符合UIDynamicItem協議的UIView對象或其它對象規定動畫行為。通過在應用的UI中集成真實世界行為和特性進,動畫行為為應用提供了一種增強用戶體驗的方式。


    4)、Multitasking


    在ios中多任務用來設計來使電池使用時間最大化。


    5)、Auto Layout


    自動布局幫助你使用非常少的代碼來建立動態接口。


    使用AutoLayout定義如何在用戶接口上布局元素的規則,這些規則表達了視圖類之間的關系,如規定一個按鈕總是處于它的父窗口的左邊緣20個點。


    在Auto Layout中使用的實體是被稱為constraints的Objective-C對象。


    6)、Storyboards


    串聯圖 是設計應用用戶接口的推薦方式。串聯圖讓你在一個地方就能夠設計全部的用戶接口,方便在一個位置看到所有的視圖和視圖控制器以及理解它們是如何一起工作的。串聯圖的一個重要的部分是定義segues(segues是從一個視圖控制器到另一個的轉換)。這些轉換代表用戶接口之間的交互。你可以使用XCOE來可視的定義這些轉換或者通過編程啟動它們。


    你能使用一個單串聯圖文件來存儲所有的應用視圖控制器和視圖,或者使用多個視圖串聯圖文件來組織用戶接口。


    在應用建立時間,Xcode讀取串聯圖文件的內容并把它分成多個能獨立加載的離散的片斷,以便獲得更好的性能。UIKit框架提供了相應的類來從程序中存取一個串聯圖的內容。


    7)、UI State Preservation


    UI狀態保存能夠使應用表現的一直運行,從而為用戶提供無縫的體驗。如果系統遇到內存壓力,系統可能安靜地強制停止一個或多個后臺應用。


    當應用從前臺移到后臺時,該服務能保存應用的視圖和視圖控制器的狀態。在下次應用重新啟動時,能夠使用先前保存的狀態信息來恢復視圖和視圖控制器到它們先前的配置,使應用表現得好像一直在運行。


    8)、Apple Push Notification Service


    蘋果的推送通知服務提供了一種提示用戶關于新信息的方式,即使應用當前不在激活運行狀態。


    使用該服務,你能推送文本通知,在應用圖標上增加一個標記或者在任意時間觸發聲音提示。


    這些消息讓用戶知道他們應該打開應用來接收相關信息。自Ios7開始,你甚至能推送無聲的通知來讓應用知道有了新的內容可以下載。


    為了使用IOS應用的推送通知,用戶需要做兩部分的工作。首先應用必須登記該通知服務以及在通知被提交時處理相關的通知數據。第二,你必須提供一個服務端的進程來產生通知。


    服務端的進程可以使用你自己的本地服務器或者使用蘋果的推送通知服務。


    9)、Local Notifications


    本地通知作為推送通知機制的補充,可以給應用提供一種不依賴外部服務器產生本地通知的方式。


    運行在后頭的應用能使用本地通知作為當重要的事件發生時引起用戶注意的一種方式。例如,運行在后臺的導航應用能使用本地通知來提示用戶什么時間該轉彎了。


    應用也能調度本地通知在將來的時間提交以及使那些通知在應用不運行也能被提交。


    本地通知的一個優點是它們與你的應用是獨立的。在一個通知已被調度,系統管理它的提交。另外當通知被提交時你的應用甚至不必運行。


    10)、Gesture Recognizers


    手勢識別用來檢測通常類型的手勢。由于手勢識別使用與系統檢測手勢相同的試探方法,因此手勢識別為應用提供了一個一致的行為。為了使用它,你能在你的視圖上附加手勢識別功能和并給它提供一個在手勢出現時要執行的方法。


    手勢識別跟蹤原始的觸摸事件和確定它們什么時候與想要的手勢匹配。


    11)、System View Controllers


    許多系統框架為標準的系統接口定義了視圖控制器。只要有可能,為了呈現一致的用戶體驗,就應該使用系統提供的視圖控制器而不是創建一個新的。

App開發優質服務商

App開發方案
免費預約
服務時間:周一至周日9:00—22:00
提供一站式眾包服務
立即發布懸賞
国内精品免费视频自在线拍