Android中的Realm VS Room

Rai*_*ker 52 android realm android-room

我正在构建一个应用程序,我需要在其中使用数据库.我正在考虑使用Room,因为它现在是新的和热门的.但我也听说过很多关于Realm的好东西.有人能指出使用每种产品的可能优势吗?

我做了我的研究并阅读了文档,但我没有经验可以自己理解

房间文件

领域文档

Ale*_*pin 64

领域

一个相对快速和方便的库,所有链接都是简单实现的,这与数据库的面向对象有关.优秀的文档.也许是目前在移动设备上存储数据的最佳选择之一,负数只能是apk文件大小增加2.5 MB.

房间

在Google I/O 2017上展示的有趣解决方案是在Android OS上使用数据库的最佳选择.尽管有必要使用显式的sql-requests,但是这个库非常方便,我个人喜欢它.在性能方面处于领先地位,所以我建议你选择这个特定的库.这方面的一大优势是基于内置的SQLite数据库.自从谷歌提交的这个解决方案以来,它将很快变得流行,因此,找到与其一起出现的问题的解决方案将没有问题.

Realm使用更多RAM并增加apk大小,构建时间.所以我更喜欢Room.

有比较:https://github.com/AlexeyZatsepin/Android-ORM-benchmark

  • 我们有一个新的候选ObjectBox,那怎么样? (6认同)
  • 对于领域而言,您的基准比较是不公平的。它基于非常旧的领域版本,但是更重要的是,您使用效率低下的代码进行实施,这使其运行速度比正确使用时慢 (2认同)

Far*_*sbi 8

我们推动使用数据库库的主要原因是它让我们模拟我们的对象并使CRUD变得更容易,我对Realm有很好的体验,它很容易设置和工作,它快速而灵活,但是库的大小是一个问题,可以通过在构建目标ABI上拆分APK来减少APK大小,但我更喜欢使用GreenDao,因为它基于SQLite,虽然我认为它有一些缺点,如任何其他库,但它是最好的选择为了我.

老实说,我没有尝试Room,但简单地看一下文档,你会发现它对开发人员更灵活和友好.作为谷歌粉丝,我更喜欢使用谷歌人的库!正如我之前所说,我更喜欢原生SQLite上的一层到一个全新的数据库库.

我将在下一个项目中尝试Room,并在稍后的更新中分享我的经验,希望它有所帮助.