【问题标题】:installing RealmSwift pod also installs Realm (ObjC)?安装 RealmSwift pod 也会安装 Realm (ObjC)?
【发布时间】:2015-10-09 07:24:13
【问题描述】:

在使用pod RealmSwift 安装 Realm Cocoapod 时,我收到了这条消息

Installing Realm (0.95.3)
Installing RealmSwift (0.95.3)

这是否意味着安装了两个包装器,Objective-C Swift?所以我可以在Objective-C类中导入"Realm.h",在Swift中导入RealmSwift?对我来说,这看起来很有效。

编辑:我确实想将 Realm 与项目类中使用 Objective-C 和 Swift 的混合项目一起使用。问题是,如果我只需要安装Pod RealmSwift

【问题讨论】:

  • 我不知道 RealmSwift 究竟是如何配置或工作的,但它可能只是 Realm objC 代码之上的一个快速绑定,那么依赖于ObjC 版本,当您请求 swift 版本时,您将获得两者。

标签: ios objective-c swift realm


【解决方案1】:

RealmSwift 是 Objective-C++ 中现有代码的包装器。由于 Swift 仍处于“进行中的工作”并且 Realm 拥有非常庞大的代码库,因此可以更方便地开始包装旧代码并将 Swift 功能提供给开发人员,而无需从头开始重做所有事情。

我不知道未来的计划是什么,但 Realm 的贡献者在 workshop 中教授了这个概念:

在本次研讨会中,您将围绕一个现有的小型 Objective-C 库创建一个 Swift 包装框架。

回答您的问题 - 。 Swift 包装器是用来支持 Swift 特性的,但实际上只调用旧函数并围绕它进行一些其他工作,以赋予它 Swifty 的感觉。

【讨论】:

  • 这也是需要的,因为 Realm 的 Core 是用 C++ 编写的,目前没有其他方法可以从 Swift 接口 C++,而不是使用 Objective-C。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-14
  • 1970-01-01
  • 2016-04-09
  • 1970-01-01
相关资源
最近更新 更多