Shared Preferenece
Datastore
SQLite (lib)
Room
Realm
DataBase 를 사용해야 되는 경우:
오프라인 접근: 인터넷 연결이 끊길 경우에 사용자가 앱을 계속 사용할 수 있도록 데이터베이스에 저장한다.
데이터 캐싱: 백엔드 서버에서 가져온 데이터를 데이터베이스에 캐싱할 수 있다.
버퍼: 사용자가 오프라인 상태에서 작업을 수행하고, 나중에 온라인 상태로 돌아갈 때 변경사항을 서버에 동기화 할 수 있다.
앱 내에서만 사용할 데이터 저장: 앱 내에서만 사용할 데이터가 필요할 때 사용한다.