swift 快速奔跑的兔几 本节的内容是:基于文档的应用程序

OS X和iOS提供了大量的工具来帮助设计app,让用户能够创建,编辑和处理文档。

尽管OS X和iOS上都提供了一些用于开发基于文档的应用程序的技术,但向用户呈现文档的方法却是不同的:
OS X上,用户通过Finder管理其文档。
iOS上,仍然存在文件系统,但是用户很少能看到它。所有文档都是通过应用程序呈现给用户并进行管理的。管理文档所涉及的所有任务,都必须由应用程序完成。

一个文档可以由多个应用程序打开。例如,图像既可以用内置的预览应用程序打开,也可以用PS打开。OS X和iOS为应用程序提供了一些方法,来指明自己能够打开某些特定类型的文档。

1、NSDocument和UIDocument类: 在OS X和iOS中,文档在应用程序中分别用NSDocument和UIDocument类表示。这两个类表示文档病存储其信息。每次创建一个新的文档时,都会为应用程序的这两个类的子类创建一个新的实例。 2、MVC中的文档对象 文档对象属于模型-视图-控制器范例的一部分。在app中,文档对象是模型对象,它们负责在次盘上读写信息,并向应用程序的其他部分提供该信息。 所有文档对象的核心都提供两个方法。第一个是保存方法(将信息写到磁盘上),第二个是加载方法(从磁盘上读取信息)。因此,文档对象负责将存放在内存中的文档信息,转换为可以存储在磁盘上的数据表示。 NSDocument的这两个方法是: func dataOfType/func readFromData UIDocument的这两个方法是: func contentsForType/func loadFromContents 文档的类型: 1)平面文件:例如文本文档和图像,它们必须被整体加载到内存中(如果文件过大,可能导致性能问题)。 2)文件包:也就是文件夹。 3)数据库:它们是单个文件,可以根据需要部分加载到内存中(应用程序使用数据库,需要比较复杂的代码)。 目前,OS X和iOS使用平面文件和数据库较多,因为它们更加易于归档和乡iCloud上传。

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...