Fragmented
095: Interview with Florina Muntenescu
In this episode, we talk to Florina from Google about the recently released Database library Room. Room was introduced as part of the Android Architecture components and has been picking up a lot of steam in the community.
Room focuses on being a beautiful api layer to Sqlite. Florina explains to us how we can use Room to create a database, creating entities and how them map to tables, using DAOs to access data and even observe them
Listen on for the details!
Show Notes
Official docs
- Android Architecture Components
- Room migration docs
- runInTransaction api (which Florina recommended if you're executing more than one SQL statement and don't want multiple event fired)
- Google Samples - Android Architecutre Components
Florina's posts
360|AnDev talks
Micellaneous questions about Room (that we chopped off for lack of time)
Q: Does Room use reflection?
A: There's only 1 reflection call (at the time of finding the database implementation, when you call Room.builder). Most of the other stuff is generated code (with compile time verification!).
Q: Does Room provide compile-time SQL checks
A: Yes, Room was designed to provide compile-time checks.
Q: Does Room handle SQL injection attacks (security)
Yes ... for all practical purposes. See this post for times when it doesn't.
Q: Do we have tools to access the sqlite database file directly?
Nope, at the moment, adb is your friend. Use that to download the file manually from your device.
Sponsors
Contact
- @fmuntenescu [twitter.com]
- @fragmentedcast [twitter.com]
- @donnfelker and +DonnFelker
- @kaushikgopal and +KaushikGopalIsMe