为 Android 个应用程序使用 ORM 是个好主意吗?
Is it a good idea to use an ORM for Android apps?
使用像这样的 ORM(对象关系映射器)是个好主意吗:
- ORMLite
- 有效Android
Android 个应用。
该技术添加的抽象层本身具有计算和内存开销。因为,我认为这些资源和电池寿命大多非常有限 'no',但另一方面它使代码更简洁,因为几乎不需要编写原始查询。
- 优缺点是什么?
- 推荐什么?
- 如果推荐,我应该使用哪一个?
OrmLite 在底层使用 SQLite 数据库。它只是使用注释处理器生成数据库模式。如果您的项目允许使用第三方开源库,那是个好主意。但是,您应该封装所有依赖于实现的功能 - 'Dao' 模式。通过这样做,您将能够在数据库实现之间切换。不过要小心 Realm。它是一个非常强大的数据库,但如果使用不当,它可能会毁掉你的架构。在实现数据库本身之前始终指定 Dao 接口。
截至 2017 年 5 月 18 日,Google 在 I/O '17 引入了 Room 作为原始 SQLite 查询的替代品。所以,至少现在官方推荐这个ORM。
使用像这样的 ORM(对象关系映射器)是个好主意吗:
- ORMLite
- 有效Android
Android 个应用。
该技术添加的抽象层本身具有计算和内存开销。因为,我认为这些资源和电池寿命大多非常有限 'no',但另一方面它使代码更简洁,因为几乎不需要编写原始查询。
- 优缺点是什么?
- 推荐什么?
- 如果推荐,我应该使用哪一个?
OrmLite 在底层使用 SQLite 数据库。它只是使用注释处理器生成数据库模式。如果您的项目允许使用第三方开源库,那是个好主意。但是,您应该封装所有依赖于实现的功能 - 'Dao' 模式。通过这样做,您将能够在数据库实现之间切换。不过要小心 Realm。它是一个非常强大的数据库,但如果使用不当,它可能会毁掉你的架构。在实现数据库本身之前始终指定 Dao 接口。
截至 2017 年 5 月 18 日,Google 在 I/O '17 引入了 Room 作为原始 SQLite 查询的替代品。所以,至少现在官方推荐这个ORM。