鍍金池/ 教程/ iOS/ 整合數(shù)據(jù)
查找信息
使用設(shè)計(jì)模式
設(shè)計(jì)用戶(hù)界面
應(yīng)用程序開(kāi)發(fā)過(guò)程
iOS 技術(shù)
接下來(lái)做什么
串聯(lián)圖
處理 Foundation
編寫(xiě)自定類(lèi)
整合數(shù)據(jù)
基礎(chǔ)
設(shè)置
添加數(shù)據(jù)
定義交互

整合數(shù)據(jù)

應(yīng)用程序的數(shù)據(jù)模型由數(shù)據(jù)結(jié)構(gòu)和(可選)自定業(yè)務(wù)邏輯組成;自定業(yè)務(wù)邏輯是讓數(shù)據(jù)保持一致?tīng)顟B(tài)所必要的。在設(shè)計(jì)數(shù)據(jù)模型時(shí),不應(yīng)完全忽略應(yīng)用程序的用戶(hù)界面。但是,您肯定會(huì)想單獨(dú)實(shí)現(xiàn)數(shù)據(jù)模型對(duì)象,而不依賴(lài)于特定的視圖或視圖控制器是否存在。保持?jǐn)?shù)據(jù)與用戶(hù)界面分開(kāi),有助于通用應(yīng)用程序(可在 iPad 和 iPhone 雙平臺(tái)上運(yùn)行的應(yīng)用程序)的實(shí)現(xiàn),也讓代碼復(fù)用變得更容易。

http://wiki.jikexueyuan.com/project/ios-developer-library/images/ModelViewController_m_2x.png" alt="" />

模型設(shè)計(jì)

如果需要儲(chǔ)存的數(shù)據(jù)很小,那么 Foundation 框架類(lèi)可能是您的最佳選擇。您可以搜索現(xiàn)有的 Foundation 類(lèi),查看您可以使用哪些行為,而無(wú)需自己嘗試實(shí)施同樣的事情。例如,如果應(yīng)用程序只需要跟蹤字符串列表,則可以依賴(lài) NSArray 和 NSString 來(lái)替您操作。在處理 Foundation中,您可以了解有關(guān)這些以及其他 Foundation 類(lèi)的更多信息。

如果數(shù)據(jù)模型不僅要儲(chǔ)存數(shù)據(jù),還要求自定業(yè)務(wù)邏輯,那么您可以編寫(xiě)一個(gè)自定類(lèi)。您應(yīng)考慮如何將現(xiàn)有框架類(lèi)合并到您自己的類(lèi)的實(shí)現(xiàn)中。在自定類(lèi)中使用現(xiàn)有框架類(lèi),往往比重寫(xiě)更省時(shí)省力。例如,自定類(lèi)可能使用 NSMutableArray 來(lái)儲(chǔ)存信息,但是會(huì)定義其自己的功能來(lái)處理該信息。

以下是設(shè)計(jì)數(shù)據(jù)模型時(shí)需要注意的一些問(wèn)題:

您需要儲(chǔ)存哪種類(lèi)型的數(shù)據(jù)?您設(shè)計(jì)的數(shù)據(jù)模型應(yīng)當(dāng)能恰當(dāng)?shù)靥幚硖囟?lèi)型的內(nèi)容,不管是儲(chǔ)存文本、文稿、大圖像,還是其他類(lèi)型的信息。

您可以使用哪種數(shù)據(jù)結(jié)構(gòu)?決定了什么地方應(yīng)該使用框架類(lèi),什么地方需要定義具有自定功能的類(lèi)。

您如何將數(shù)據(jù)提供給用戶(hù)界面?您的模型不應(yīng)該直接與界面通信。如果要處理模型與界面之間的互動(dòng),需要為您的控制器添加邏輯。

模型實(shí)現(xiàn)

您需要了解更多有關(guān) Objective-C 及其功能的信息,才能編寫(xiě)出優(yōu)秀且高效的代碼。雖然本指南描述了如何構(gòu)建簡(jiǎn)單的應(yīng)用程序,但在您自行編寫(xiě)具備完整功能的應(yīng)用程序前,還需要更加熟悉該語(yǔ)言。

學(xué)習(xí) Objective-C 的好方法有很多種。有的人通過(guò)閱讀《Programming with Objective-C》(使用 Objective-C 編程)來(lái)了解其概念,然后編寫(xiě)一些小的測(cè)試應(yīng)用程序來(lái)鞏固對(duì)該語(yǔ)言的理解,并練習(xí)編寫(xiě)更好的代碼。

有的人則直接跳到編程階段,并在無(wú)法完成某些操作時(shí),再去查找更多信息。如果您更喜歡這種方式,請(qǐng)將《Programming with Objective-C》(使用 Objective-C 編程)留作參考,當(dāng)作了解各種概念的練習(xí)資料,并在開(kāi)發(fā)時(shí)應(yīng)用到應(yīng)用程序中。

開(kāi)發(fā)您的首個(gè)數(shù)據(jù)模型時(shí),最重要的目標(biāo)是使它能正常運(yùn)作。仔細(xì)思考數(shù)據(jù)模型的結(jié)構(gòu),而不要急于將其完美化。開(kāi)始實(shí)現(xiàn)它之后,則要勇于反復(fù)重做和改進(jìn)您的模型。