코어 데이터 [맥 OS X과 아이폰 개발자를 위한]
- 원서명Core Data: Apple's API for Persisting Data on Mac OS X (ISBN 9781934356326)
- 지은이마커스 자라
- 옮긴이이동욱
- ISBN : 9788960771581
- 30,000원
- 2010년 10월 29일 펴냄 (절판)
- 페이퍼백 | 320쪽 | 185*235mm
- 시리즈 : 모바일 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
맥 OS X과 아이폰 개발자를 위한 국내 첫 코어 데이터 서적. 데이터를 다루는 맥 OS 및 iOS 애플리케이션을 만드는 개발자라면 꼭 읽어야 할 필독서.
[ 소개 ]
이 책에서 다루는 큰 그림부터 세부적인 고급 기술까지 모두 읽고 나면, 자신도 모르게 코어 데이터 문외한에서 전문가로 도약할 수 있을 것이다.
- 스티브 스콧 (Scotty), 맥 디벨로퍼 네트워크
맥 OS X이나 아이폰을 대상으로 하는 코코아 애플리케이션에서 정보를 영구적으로 저장하려면 코어 데이터가 필요하다. 물론 코어데이터를 사용하지 않고 SQLite만으로 어렵사리 진행하거나, XML을 직접 생성하거나, 고유한 이진 형식을 만들어도 무방하다. 하지만 코어 데이터 API를 이용하면 시간과 에너지를 절약할 수 있다.
이 책에는 코어 데이터 기초부터 전문적인 설정에 이르는 다양한 내용을 담았다. 책을 따라 읽으며 맥 OS X이 제공하는 코어 데이터 API에 기반한 완전한 애플리케이션을 작성할 수 있다.
코어 데이터는 객체 그래프를 만들고, 데이터를 저장하는 작업을 쉽게 만들어 준다. 하지만 주의해야 할 수많은 함정 또한 도사리고 있다. 이 책은 버전 관리는 물론 퀵룩, 동기화 서비스, 스포트라이트와 통합하는 내용까지 많은 것을 보여준다. 성능을 어떻게 개선할지, 멀티스레드 환경에서는 어떻게 동작하는 지도 보게 될 것이다. 또한 데스크탑과 아이폰 모두에서 코어 데이터를 사용하는 방법도 알아본다.
이 책을 마칠 때쯤이면 제대로 동작하는 애플리케이션을 완성하고, 습득한 코어 데이터에 대한 전반적인 지식을 활용해 OS X과 어떻게 통합할지 결정할 수 있을 것이다.
또한 일상적이지 않은 상황에서 유용하게 사용할 수 있는 다양한 비법과, 예전에는 코어 데이터 API를 사용할 생각조차 하지 못했을 부분들도 알려준다. 아마 또 다른 필수 도구들로 자리매김 할 것이다.
[ 이 책에서 다루는 내용 ]
이 책에서는 코어 데이터를 활용하는 애플리케이션을 하나 만들어 보며, 코어 데이터를 구석구석 살펴본다. 애플리케이션 작성 초반에는 엄밀히 말해 코어 데이터에는 속하지 않지만 코어 데이터를 동작하게 하는 기술들도 몇 개 다룰 것이다. 이후에 코어 데이터를 심도 있게 살펴보면서 어떻게 코어 데이터가 OS X의 다른 기술과 상호작용하고 그 기술들에 적용되는지 알아본다.
[ 이 책의 구성 ]
1장 ‘들어가며’에서는 이 책에서 다루는 내용과 코어 데이터에 대한 개요를 전반적으로 살펴본다.
2장 ‘코어 데이터의 시작’에서는 데모 프로그램을 작성하면서 애플리케이션을 제대로 동작하게 하기 위해 거치는 모든 단계를 아주 간략하게 훑어본다.
3장 ‘코어 데이터와 바인딩’에서는 코어 데이터를 강력한 프레임워크로 만드는 핵심인 키 밸류 옵저빙(KVO, Key Value Observing)과 키 밸류 코딩(KVC, Key Value Coding)을 알아본다.
4장 ‘코어 데이터의 내부’에서는 코어 데이터의 주요 구성 요소들을 살펴본다.
5장 ‘버전 관리와 마이그레이션’에서는 애플리케이션을 사용자들에게 배포한 이후 내부의 데이터 모델을 바꾸는 방법을 알아본다.
6장 ‘성능 관리’에서는 4장에서 배운 주요 구성 요소들을 가지고 최대한 빠른 속도로 수행하는 방법을 알아본다.
7장 ‘스포트라이트, 퀵 룩, 코어 데이터’에서는 코어 데이터를 이용한 애플리케이션을 운영체제의 다른 부분과 통합하는 방법을 배운다.
8장 ‘동기화 서비스와 코어 데이터’에서는 여러 인스턴스로 동작하는 애플리케이션 내에서 데이터를 동기화하는 방법을 알아본다.
9장 ‘코어 데이터와 멀티스레딩’에서는 주어진 컴퓨팅 능력을 극대화하는 방법을 배운다.
10장 ‘코어 데이터와 아이폰’에서는 잠시 눈을 돌려 좀 더 쉽게 아이폰 개발을 위해 코어 데이터의 강력함과 유연함을 활용하는 방법을 알아본다.
11장 ‘분산 코어 데이터 비법’에서는 코어 데이터를 분산 환경에서 사용하기 위한 솔루션을 살펴본다.
12장 ‘동적 파라미터 비법’에서는 Simply Elegant Sales와 그 이전 초기 설계에서 몇 번 사용했던 비밀을 하나 공유한다. 이 비법을 이용해 NSUserDefault와 유사한 도큐먼트 레벨 프로퍼티 저장 시스템을 설계한다.
[ 소개 ]
이 책에서 다루는 큰 그림부터 세부적인 고급 기술까지 모두 읽고 나면, 자신도 모르게 코어 데이터 문외한에서 전문가로 도약할 수 있을 것이다.
- 스티브 스콧 (Scotty), 맥 디벨로퍼 네트워크
맥 OS X이나 아이폰을 대상으로 하는 코코아 애플리케이션에서 정보를 영구적으로 저장하려면 코어 데이터가 필요하다. 물론 코어데이터를 사용하지 않고 SQLite만으로 어렵사리 진행하거나, XML을 직접 생성하거나, 고유한 이진 형식을 만들어도 무방하다. 하지만 코어 데이터 API를 이용하면 시간과 에너지를 절약할 수 있다.
이 책에는 코어 데이터 기초부터 전문적인 설정에 이르는 다양한 내용을 담았다. 책을 따라 읽으며 맥 OS X이 제공하는 코어 데이터 API에 기반한 완전한 애플리케이션을 작성할 수 있다.
코어 데이터는 객체 그래프를 만들고, 데이터를 저장하는 작업을 쉽게 만들어 준다. 하지만 주의해야 할 수많은 함정 또한 도사리고 있다. 이 책은 버전 관리는 물론 퀵룩, 동기화 서비스, 스포트라이트와 통합하는 내용까지 많은 것을 보여준다. 성능을 어떻게 개선할지, 멀티스레드 환경에서는 어떻게 동작하는 지도 보게 될 것이다. 또한 데스크탑과 아이폰 모두에서 코어 데이터를 사용하는 방법도 알아본다.
이 책을 마칠 때쯤이면 제대로 동작하는 애플리케이션을 완성하고, 습득한 코어 데이터에 대한 전반적인 지식을 활용해 OS X과 어떻게 통합할지 결정할 수 있을 것이다.
또한 일상적이지 않은 상황에서 유용하게 사용할 수 있는 다양한 비법과, 예전에는 코어 데이터 API를 사용할 생각조차 하지 못했을 부분들도 알려준다. 아마 또 다른 필수 도구들로 자리매김 할 것이다.
[ 이 책에서 다루는 내용 ]
이 책에서는 코어 데이터를 활용하는 애플리케이션을 하나 만들어 보며, 코어 데이터를 구석구석 살펴본다. 애플리케이션 작성 초반에는 엄밀히 말해 코어 데이터에는 속하지 않지만 코어 데이터를 동작하게 하는 기술들도 몇 개 다룰 것이다. 이후에 코어 데이터를 심도 있게 살펴보면서 어떻게 코어 데이터가 OS X의 다른 기술과 상호작용하고 그 기술들에 적용되는지 알아본다.
[ 이 책의 구성 ]
1장 ‘들어가며’에서는 이 책에서 다루는 내용과 코어 데이터에 대한 개요를 전반적으로 살펴본다.
2장 ‘코어 데이터의 시작’에서는 데모 프로그램을 작성하면서 애플리케이션을 제대로 동작하게 하기 위해 거치는 모든 단계를 아주 간략하게 훑어본다.
3장 ‘코어 데이터와 바인딩’에서는 코어 데이터를 강력한 프레임워크로 만드는 핵심인 키 밸류 옵저빙(KVO, Key Value Observing)과 키 밸류 코딩(KVC, Key Value Coding)을 알아본다.
4장 ‘코어 데이터의 내부’에서는 코어 데이터의 주요 구성 요소들을 살펴본다.
5장 ‘버전 관리와 마이그레이션’에서는 애플리케이션을 사용자들에게 배포한 이후 내부의 데이터 모델을 바꾸는 방법을 알아본다.
6장 ‘성능 관리’에서는 4장에서 배운 주요 구성 요소들을 가지고 최대한 빠른 속도로 수행하는 방법을 알아본다.
7장 ‘스포트라이트, 퀵 룩, 코어 데이터’에서는 코어 데이터를 이용한 애플리케이션을 운영체제의 다른 부분과 통합하는 방법을 배운다.
8장 ‘동기화 서비스와 코어 데이터’에서는 여러 인스턴스로 동작하는 애플리케이션 내에서 데이터를 동기화하는 방법을 알아본다.
9장 ‘코어 데이터와 멀티스레딩’에서는 주어진 컴퓨팅 능력을 극대화하는 방법을 배운다.
10장 ‘코어 데이터와 아이폰’에서는 잠시 눈을 돌려 좀 더 쉽게 아이폰 개발을 위해 코어 데이터의 강력함과 유연함을 활용하는 방법을 알아본다.
11장 ‘분산 코어 데이터 비법’에서는 코어 데이터를 분산 환경에서 사용하기 위한 솔루션을 살펴본다.
12장 ‘동적 파라미터 비법’에서는 Simply Elegant Sales와 그 이전 초기 설계에서 몇 번 사용했던 비밀을 하나 공유한다. 이 비법을 이용해 NSUserDefault와 유사한 도큐먼트 레벨 프로퍼티 저장 시스템을 설계한다.
목차
목차
- 1장 들어가며
- 1.1 코어 데이터란 무엇인가?
- 1.2 이 책에서 다루는 내용
- 1.3 감사의 글
- 2장 코어 데이터의 시작
- 2.1 예제 애플리케이션
- 2.2 예제 애플리케이션 디자인
- 2.3 숙련된 독자
- 2.4 엑스코드 프로젝트 시작
- 2.5 데이터 모델 만들기
- 2.6 컨트롤러 계층 작성
- 2.7 사용자 인터페이스 만들기
- 2.8 약간의 코드 추가
- 3장 코어 데이터와 바인딩
- 3.1 키 밸류 코딩
- 3.2 키 밸류 옵저빙
- 3.3 코코아 바인딩과 코어 데이터
- 3.4 KVC, KVO와 코어 데이터를 사용하는 기타 UI 요소
- 4장 코어 데이터의 내부
- 4.1 NSManagedObject
- 4.2 NSFetchRequest
- 4.3 NSSortDescriptor
- 4.4 NSManagedObjectContext
- 4.5 NSManagedObjectModel
- 4.6 NSPersistentStoreCoordinator
- 4.7 조회 요청 프로퍼티
- 4.8 정리
- 5장 버전 관리와 마이그레이션
- 5.1 마이그레이션 작업 전 코드 정비
- 5.2 간단한 마이그레이션
- 5.3 코어 데이터 버전 관리의 기초
- 5.4 더 복잡한 마이그레이션
- 5.5 자동 데이터 마이그레이션
- 5.6 수동 데이터 마이그레이션
- 5.7 점진적 데이터 마이그레이션
- 5.8 팁과 트릭
- 6장 성능 관리
- 6.1 영구 저장 공간의 형태
- 6.2 데이터 모델 최적화
- 6.3 가져오기
- 6.4 폴트 상태
- 6.5 접근 방식
- 7장 스포트라이트, 퀵 룩, 코어 데이터
- 7.1 스포트라이트 통합
- 7.2 퀵 룩과 통합
- 7.3 한군데 모으기
- 7.4 심화 학습
- 8장 동기화 서비스와 코어 데이터
- 8.1 동기화 서비스의 기초
- 8.2 데이터 모델 업데이트
- 8.3 동기화 스키마 만들기
- 8.4 클라이언트 설명 파일 작성
- 8.5 NSPersistentStoreCoordinator 수정
- 8.6 동기화 도우미 작성
- 8.7 싱크로스펙터
- 8.8 정리
- 9장 코어 데이터와 멀티스레딩
- 9.1 코어 데이터가 멀티스레드 환경에 안전하지 않은 이유
- 9.2 여러 개의 컨텍스트 만들기
- 9.3 레시피 내보내기
- 9.4 레시피 가져오기
- 9.5 재귀 복사
- 9.6 정리
- 10장 코어 데이터와 아이폰
- 10.1 비슷한 점과 다른 점
- 10.2 메모리 관리
- 10.3 데이터 변경 통지
- 10.4 아이폰용 레시피 애플리케이션
- 10.5 정리
- 11장 분산 코어 데이터 비법
- 11.1 서버 작성
- 11.2 클라이언트 작성
- 11.3 네트워크 관련 코드 테스트
- 11.4 정리
- 12장 동적 파라미터 비법
- 12.1 엑스코드 예제 프로젝트 만들기
- 12.2 DocumentPreferences 객체
도서 오류 신고
정오표
정오표
66페이지 그림 3.7
Model Key Path 값 비움
Display Name: predicate -> Recipe
Predicate Format: keyPath contains $value -> name contains[c]
$value