iOS Application的文件目录:
1.Documents //这个可以被iTunes 共享文件,并且会被备份到iCloud。
2.Library //下面有preference and cache。
3.SystemData//
4.tmp //每次重新打开程序,里面的文件都会消失
何为数据本地化?
数据本地化
:又名持久化,存储在磁盘本地当中。
为何要数据本地化?
1. 是为了解决application在没有网络的情况下,让应用仍然需要正常运行。
2.为了下次要做什么特定的操作,需要将当前内存当中的数据暂时先保存下来。
数据持久化的方式?
- NSUserDefaults
- 归档的使用
- 数据库
- CoreData
一般情况下,[[NSUserdefaults standardUserdefaults] setObject: forKey] 和 [[NSUserdefaults standardUserdefaults] objectForKey:] 这两个方法和 归档连着使用。(说到归档,要想到NSCoding 这两个protocol,我们需要实现,我们可以用runtime 运行时对对象的属性动态算出来进行 encode 和 decode)。
需求的分析:
1.应用是全offline(应用场景为登录的时候,我们下载数据库,或者下载数据然后存到本地),这种场景就类似电脑端C/S 类型的应用了;
2.应用以onLine 为主,offline 为辅(每次有网络的时候是通过online交互,没有网络的时候是否需要正常操作,所需求的数据量是多少);
架构分析:三层架构
UI: //UI层面
BLL: //业务逻辑(验证,计算,业务规则)
DAL: //和数据库打交道。增删改查
Entity: //数据模型
从iOS 角度来看:
1.iOS一般的类是NSObject 的model类,UIViewController类,View。我们将UIViewController和View 归类到UI层(
UI表现层
)。
2.我们可以新建一个ViewModel 用来存放业务逻辑(
BLL
)。
3.如果涉及到数据库的增删该茶 我们可以新建一个
DAL
(一般一个表我们可以新建一个model,用继承的方式产生不同的子类,传给父类不同的创建table的sql和tablename。在基类中我们书写增<一条record ,多条record>删改查的方法)。
4.entity,指存放数据的实体。
网友评论