Sobes.tech
Junior — Middle

Кадом усулҳо ва воситаҳоро барои муошират бо базаи маълумот истифода мебаред?

sobes.tech AI

Ҷавоб аз AI

Барои муошира бо базаи маълумот дар Android, одатан истифода мешаванд усулҳо ва воситаҳои зерин:

  • SQLite — базаи маълумоти муоширати дохилӣ. Барои кор бо он, метавон истифода бурд синфи SQLiteOpenHelper.
  • Room — китобхонаи Google, ки кор бо SQLite-ро содда мекунад, бо қабати ORM қулай ва дастгирии аннотацияҳоро пешниҳод мекунад.
  • ContentProvider — барои мубодилаи маълумот байни барномаҳо.
  • Realm ё ObjectBox — базаи маълумоти NoSQL алтернативӣ барои барномаҳои мобилӣ.

Маслиҳат барои истифодаи Room:

@Entity
data class User(
    @PrimaryKey val id: Int,
    val name: String
)

@Dao
interface UserDao {
    @Query("SELECT * FROM user")
    fun getAll(): List<User>

    @Insert
    fun insert(user: User)
}

@Database(entities = [User::class], version = 1)
abstract class AppDatabase : RoomDatabase() {
    abstract fun userDao(): UserDao
}

// Инициализация
val db = Room.databaseBuilder(
    context,
    AppDatabase::class.java, "database-name"
).build()

// Истифода
val users = db.userDao().getAll()