处理iOS应用程序状态/数据的最佳设计模式

时间:2017-11-14 14:38:03

标签: ios design-patterns

我正在开始一个新项目(学习目的),我正在尝试找出在以下场景中使用的最佳软件设计模式。

我有几个数据需要从多个网络服务下载并存储在我的应用程序中,以便稍后显示。但是,每个数据(例如教师,学生列表)将仅用于一个或多个特定视图控制器(例如,teacherViewController和studentsViewController)。

我读到Singleton模式或使用AppDelegate存储变量(像ApplicationData这样的对象)是一种不好的做法,在这个我要限制数据访问的例子中更是如此。

那么,我应该选择哪种设计模式?我已经阅读了有关依赖注入的内容,但我对此没有任何线索,或者它是否在这个问题上帮助我。如果它有帮助,一些解释的例子会很好。

1 个答案:

答案 0 :(得分:0)

您需要某种数据库来存储下载的数据。好的选择是Realm和核心数据。处理数据的正确方法是:

  1. 检查数据是否已存在于数据库中,并在可用时显示。
  2. 从服务器下载或更新数据并将其解析为对象。
  3. 将对象保存到数据库。
  4. 显示从DB获取的数据给用户。
  5. 根据需要下载数据。当您与学生一起打开VC时,只下载学生数据等等。

    已编辑:如果您需要打开应用程序中的所有数据,请在第一个屏幕打开之前加载并放入数据库。然后只需使用DB向用户显示数据。