k-coding
CoreData ( 2 ) 본문
CoreData (2)
오늘은 CoreData의 개념에 대해서 좀 더 알아보겠습니다.
이전 포스트에서 CoreData는 DB가 아님을 학습했었습니다.
CoreData의 특징, 개념
1 ) Entity(데이터가 저장될 구조)를 통해 데이터 저장 구조 정의
- 테이블을 통해 데이터 저장 구조를 정의하는 다른 DB들과 다름
- Entity 구성
- Attribute : Entity의 하위 속성
- Relation : Entity끼리의 관계
- Fatched Properties. : 템플릿 형태로 만들어 놓은 것
2 ) In - Memory 방식 존재
- 사용하려는 모든 데이터는 메모리에 우선 로딩되는 과정
- 영구 저장소를 사용하지 않고 인메모리 방식으로만 사용이 가능
3 ) 데이터를 객체로 취급
- 하나의 행, 레코드 하나하나를 독립된 객체로 사용한다.
4 ) DAO패턴을 통해 데이터 접근
- CoreData는 DAO객체를 자동으로 제공하는데, SQLite처럼 DAO클래스 만들고, 해당 객체로 접근하는 것과 동일
5 ) 관리 객체 : MO 패턴
- VO(Value Object) 패턴과 동일한 방법으로 CoreData에서는 이를 MO패턴이라고 하며,
객체와 관계형 데이터베이스 베이스를 자동으로 mapping시켜주는 ORM방식을 사용하여,
MO클래스의 property를 entity의 각 attribute와 직접 연결시켜줌
6 ) 객체 그래프 관리자
- CoreData는 앱에서 Modal계층을 관리하는데 사용하는 프레임워크이자, 라이프 사이클이나 영속성 관리를 위한 기능을 제공
- 객체끼리 연결이 가능하며, 연결된 객체는 영속적으로 동기화 (하나가 삭제되면 연결된 객체도 삭제)
'iOS > Xcode' 카테고리의 다른 글
CoreData ( 1 ) (0) | 2022.05.10 |
---|---|
Swift 뷰의 상태변화 메서드 (0) | 2022.04.09 |
Realm ( 3 ) (0) | 2022.04.07 |
Realm ( 2 ) (0) | 2022.04.03 |
Realm ( 1 ) (0) | 2022.03.30 |