Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单身模式适合我的情况吗?需要在iOS应用程序中全局访问大量数据_Ios_Xcode_Algorithm_Design Patterns_Memory Management - Fatal编程技术网

单身模式适合我的情况吗?需要在iOS应用程序中全局访问大量数据

单身模式适合我的情况吗?需要在iOS应用程序中全局访问大量数据,ios,xcode,algorithm,design-patterns,memory-management,Ios,Xcode,Algorithm,Design Patterns,Memory Management,我想存储从远程服务器检索到的有关我的应用程序的演示数据。演示数据将包括iOS应用程序每个屏幕(viewcontroller)的文本颜色、大小、控件位置等。演示数据将从每个屏幕访问,以实际呈现页面本身 单例模式适合这种情况吗?我关心的是这里的内存警告和性能 谢谢你的帮助。我认为你的方向是正确的,但不要被术语所困扰 您确实希望通过使用已知类上的静态方法或单例类的实例方法来封装数据。在本例中,您使用的单例不是用于数据本身,而是用于实例提供数据访问的类 一旦定义了该方法,就可以考虑性能增强,如懒惰初始化

我想存储从远程服务器检索到的有关我的应用程序的演示数据。演示数据将包括iOS应用程序每个屏幕(viewcontroller)的文本颜色、大小、控件位置等。演示数据将从每个屏幕访问,以实际呈现页面本身

单例模式适合这种情况吗?我关心的是这里的内存警告和性能


谢谢你的帮助。

我认为你的方向是正确的,但不要被术语所困扰

您确实希望通过使用已知类上的静态方法或单例类的实例方法来封装数据。在本例中,您使用的单例不是用于数据本身,而是用于实例提供数据访问的类


一旦定义了该方法,就可以考虑性能增强,如懒惰初始化、缓存以及Lastuas建议的,如果数据非常大,文件存储。

< P>这听起来像是在用户默认中应该保存的东西。这是一个类似单体(也许是,我不确定)的事情,因为您通过共享实例standardUserDefaults访问它。

我宁愿建议将它保存在某个地方(例如文件),并仅在需要时加载。(不知道为什么现代iOS开发人员将所有内容都推到NSSERDEFAULT中)。NSUserDefaults是一个管理字典的单例。。。这并不是存储真正应该放入文件的属性的最佳位置。