Junior
Koju bazu podataka koristite u svojim projektima?
sobes.tech АИ
Одговор од АИ
Realm i Room.
Realm
- Višeplatfomski (Android, iOS, React Native, Xamarin).
- Objektno-orijentisan, ne zahteva ORM.
- Brza obrada podataka u realnom vremenu.
- Podrška za reaktivne tokove.
- Sinhronizacija između uređaja.
Room
- Biblioteka za trajnost podataka, nadogradnja nad SQLite.
- Deo Android Architecture Components.
- Pruža ORM apstrakciju za jednostavan rad sa SQLite.
- Kompajlira se za proveru SQL upita.
- Koristi LiveData ili Flow za reaktivno dobijanje podataka.
// Primer korišćenja Room
@Entity
data class User(
@PrimaryKey val id: Int,
val name: String,
val age: Int
)
@Dao
interface UserDao {
@Query("SELECT * FROM user")
fun getAll(): List<User>
@Insert
fun insertAll(vararg users: User)
}
Izbor između njih zavisi od zahteva projekta: potreba za sinhronizacijom, performanse, višeplatformski rad i upoznatost tima sa tehnologijama.