本文作为IOS 应用开发的起点,它描述了IOS 应用的基础架构,包含如何让你的代码与IOS提供的代码协调一致的工作。它还向你提供了实践指导,帮助你作出更好的选择在设计和计划方面。本文适用于所有的IOS的设备,如iPad,iPhone和iPod touch.
注意:开发IOS 应用需要一台基于Intel的苹果电脑并且安装了IOS的SDK.
概览
开发新应用之初应该明确设计方案,你需要知道如何将这些方案转换为相应实现。
将你最初想法转换为一个实现计划
每一个好的IOS都始于一个好的想法,但是将这些想法付诸行动需要一些计划。每一个IOS应用很大程度上依赖设计模式,并且这些设计模式对你所要写的大部分代码产生影响。在你写代码之前,花些时间去研究一下这些可能对你写代码有用的技术和技巧,将会节约你大量时间,少走许多弯路。
UIKit 是你的应用的核心
UIKit框架是IOS应用基础,该框架对所有的事件处理、内容展示和与其它系统进行交互提供支持。理解该框架中对象所扮演的角色以及如何改变它们来定制应用的默认行为对于正确快速开发应用是非常重要的。
应用在前台和后台必须有不同行为
IOS设备可以同时运行多个应用,但只有一个应用为前台应用。只有当前的前台应用才允许展现用户界面和响应触摸事件。其它后台线程通常处于休眠状态,但有时也运行一些附加的代码。前台后台的状态切换带来你应用几个方面的变化。
iCloud影响设计你的数据模型和用户界面层
ICloud允许你的应用在不同的IOS和Mac OS X设备间共享用户数据。你的应用增加对ICloud的支持,涉及到你如何管理文件许多方面的变化。因为在ICloud的文件比仅在你应用中文件更易用,为了防止数据混乱所有的文件操作必须是同步的。ICoud也需要更改你用户界面的部分,其取决于你的应用以及它如何展现它的数据。
应用程序需要一些特定的资源
一些资源在所有的IOS的应用中必须提供。大部分应用包含图片、声音以及呈现你应用内容的其他类型的资源但App Store也要求一些提供一些特定的资源。这是因为当你的应用展现给用户以及与系统的其他部分进行交互的时候需要使用一些特定的资源。这些特定的资源使用来改善用户的整体体验。
应用程序应该在启动时恢复他们以前的UI状态
在应用启动的时候,应用需将用户界面恢复到其最后使用的状态。在正常的使用中,系统控制应用的终止。通常当其发生时,应用重新加载时应该展现其默认的用户界面.为了状态的恢复,UIKit帮助你的应用恢复到它界面的上个状态,这改善了用户体验。
许多应用程序的行为可以定制
所有应用的核心架构可能是相同的,但还有你调整你的应用的高层次设计方法,这些调整都是关于你如何添加特殊的高级功能,如数据保护和URL处理。其他影响应用程序的特定类型的设计,如VoIP应用程序。
应用程序必须为性能做调整
好的应用总是为更好的性能做调整。对于IOS应用来说,性能不仅仅意味着编写快速的代码。这通常意味着写更好的代码,你的用户界面仍然响应用户输入,你应用不显著降低电池的使用时间,你的应用不与系统的其他资源冲突。在你调整代码之前,了解有可能带来最大好处的改变类型是有必要的。
iOS环境影响许多应用程序的行为
IOS本身影响你的如何设计、编写应用程序的几个方面。因为IOS是面向移动设备的,它需要为应用程序安全方面提供更好的支持。其他系统的行为也会影响如何管理内存、如何响应硬件输入。所有这些系统的行为都影响你应用的设计
如何使用本文档
本文档想你展现应用中的核心对象是如何在一起工作的。本文档目的不是创建一个特定的IOS应用,而是向你提供一个适用于所有IOS应用的架构旅程并且在高亮显示架构中可以修改的地方以以适应你的需要。本文还尽可能的在实现核心应用架构的方法方面给予你指导和提示