Realm 이란?
오픈 소스 이고,
데이터 베이스 이고,
모바일 환경을 위한 타깃 것이고,
기존의 정형화된 데이터베이스와는 다르게 NoSQL을 지향하는(쿼리 안쓴다는 거 같음.. )??
데이터 모델 자체가 객체 컨테이너로 되어있다!!
속도도 기존 데이터 베이스보다 빠르고,
구축도 쉽고
Realm Studio가 있어서 실시간으로 확인 가능
안드와도 DB 공유가 된다!
단점은?
바이너리 용량이 늘어나고
다양한 쿼리를 지원하지 않는다
개인 프로젝트를 하면서 간단하게 필요한 데이터를 객체 형식으로 저장하고 싶었다.
CoreData나 SqlLite를 사용해도 되지만 간단한 정도만 필요해서 Realm도 사용해보고 쪼금? 공부도 해보려고한다. ㅎㅎㅎ
먼저 설치는
코코아팟으로
pod 'RealmSwift'
라고 적어주면 되구
pod version이 조금 낮으면 설치가 안될 수도 있다.
그럴 땐
sudo gem install cocoapods
해줍시다~
시작에 앞서 사용할 데이터 모델을 만들어주자.
swift 파일을 하나 생성하고
// DataModel.swift
import Foundation
import RealmSwift
class DataModel:Object{
@objc var category = ""
}
이렇게 필요한 데이터을 셋팅
저장은 어떻게 하느냐??
let realmInstance = try! Realm()
let dataModel = DataModel()
dataModel.category = "Hello"
try! realmInstance.write{
realmInstance.add(dataModel)
}
realmInstance를 생성해주고 아래와 같이 dataModel을 추가해주면 된다.
저장한 데이터를 읽는 방법은?
마찬가지로
let realmInstance = try! Realm()
인스턴스를 생성해주고
realmInstance.objects(DataModel.self)
이런 방식으로 객체들을 꺼내올 수 있다.
추후 자세한 사용법들을기록 예정~
'개발 > 개발' 카테고리의 다른 글
[iOS] - The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions (Rx 타입추론 에러) (0) | 2021.07.22 |
---|---|
[WWDC] - WWDC 2021 주요 변경 부분 정리 요약! (0) | 2021.06.15 |
[iOS] - 움직이는 애니메이션 효과 Lottie (0) | 2021.04.10 |
[iOS] - Xcode Code Coverage 정복하기 (0) | 2021.04.03 |
iOS - 레이아웃 사이클 및 드로잉 사이클 (0) | 2021.03.29 |