【问题标题】:DAO pattern in Objective C?Objective C 中的 DAO 模式?
【发布时间】:2014-03-01 17:59:42
【问题描述】:

我在目标 c 中寻找类似于 DAO 模式的东西,但我在 Google 中找不到任何东西。

在objective c中似乎没有使用dao模式。

objective c中使用的哪种模式类似于dao模式?所以我可以找到更多相关信息。

【问题讨论】:

  • 通常使用Core Data。你也可以围绕 SQLite 写一个 dao。如果你不需要数据库,你可以使用 NSCoder 将对象编码到磁盘。

标签: objective-c design-patterns dao


【解决方案1】:

DAO 只是一种模式,因此它不是特定于语言的。诚然,使用某些语言编写时的约定是在类名中使用 DAO 术语,但这不会改变这些类的结构或用途。因此,您可以使用任何 OO 语言创建 DAO 类并将责任分配给它们。实际上,在创建 DAO 对象时,底层数据存储并不重要,因为它们的目的是根据数据模型对象呈现接口。因此,您可以围绕核心数据/SQLite/NSUserDefaults/基于文件的存储/...创建 DAO 对象。

【讨论】:

    【解决方案2】:

    DAO 模式存在于 Cocoa Touch 框架中的很多地方。

    如果您正在查看 SQLite 数据库,Cocoa Touch 为您提供了 C 包装器。您也可以使用 FMDB 作为包装器。

    最好的例子是 CoreData,它为您提供了一个到持久存储的接口。它使您可以使用特定的数据操作和获取请求,而不会暴露存储的详细信息。

    您可能还对 MagicRecord 感兴趣,它是 Objective-C 的 active record pattern 实现。

    【讨论】:

      猜你喜欢
      • 2013-02-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-16
      • 2012-03-11
      • 1970-01-01
      • 2011-12-30
      • 2011-06-30
      • 2015-09-15
      相关资源
      最近更新 更多