我是 Android 开发的初学者,我正在尝试按照Google 的这个示例的应用架构编写一个 Notes 演示应用。
根据示例,ViewModel 应该访问定义在域包中的模型,即 ViewModel 不需要从 API 或数据库中知道模型是什么样的。(至少这是我从教程中理解的)
所以在我的 Note 应用程序中,我在域包和数据库包中有数据类。(本质上是一样的)
data class Note (
val id: Long,
val title: String,
val body: String
)
@Entity(tableName = "notes_table")
data class DatabaseNote constructor(
@PrimaryKey(autoGenerate = true)
var id: Long = 0L,
var title: String = "TITLE",
var body: String = "BODY"
)
要在 ViewModel 中创建新便笺,我需要创建一个新的便笺对象,其中需要 id!我的问题是,我应该只从 ViewModel 创建一个 DatabaseNote 对象,这样我就可以自动生成一个 id 吗?如果是这样,领域模型的意义何在?
提前致谢!