Habitación Android + Patrón Kotlin

la documentation de la Habitación Android dice que debemos seguir el patrón de layout singleton al crear una instancia de un object AppDatabase.

Estaba pensando en ello, y me gustaría saber si se recomienda poner la class AppDatabase dentro de mi class de aplicación. O si puedo usar el singleton de Kotlin para eso.

Digamos que tengo un DAO llamado CarroDAO y class CarrosDatabase que es una Base de datos de habitación.

¿Está bien crear una class de DatabaseManager usando un object Kotlin / singleton?

object DatabaseManager { private var dbInstance: CarrosDatabase init { val appContext = MyApplication.getInstance().applicationContext dbInstance = Room.databaseBuilder( appContext, CarrosDatabase::class.java, "mybd.sqlite") .build() } fun getCarroDAO(): CarroDAO { return dbInstance.carroDAO() } } 

Entonces puedo get la class DAO así:

 val dao = DatabaseManager.getCarroDAO()