책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 모바일/무선/임베디드 프로그래밍
· ISBN : 9788994506432
· 쪽수 : 524쪽
· 출판일 : 2012-05-04
책 소개
목차
PART I 시작하기
CHAPTER 1 헬로우, 디자인 패턴
이 책의 목적 4
시작에 필요한 것들 4
시작에 앞서 알 필요가 있는 것 5
설계 데자뷰 6
디자인 패턴의 근원-모델, 뷰, 컨트롤러(MVC) 8
시스템 설계에 영향을 줄 수 있는 사안들 12
이 책에 사용된 객체와 클래스 표기 17
디자인 패턴의 구성 23
요약 23
CHAPTER 2 사례연구: 아이폰 앱 설계
아이디어의 개념화 26
룩앤필 설계 28
아키텍처 설계 31
사용했던 디자인 패턴들 56
요약 57
PART II 객체 생성
CHAPTER 3 프로토타입
프로토타입 패턴이란? 62
프로토타입 패턴은 언제 사용하면 좋을까? 63
얕은 복사 vs. 깊은 복사 64
코코아 터치 프레임워크의 객체 복사 사용하기 66
Mark 복합 객체의 복사 메서드 구현하기 67
복제된 Mark 객체를 패턴 템플릿으로 사용하기 79
요약 82
CHAPTER 4 팩토리 메서드
팩토리 메서드 패턴이란? 84
팩토리 메서드는 언제 사용하면 좋을까? 85
팩토리 메서드가 안전한 객체 생성 방법인 이유는? 86
TouchPainter 앱의 서로 다른 캔버스 생성하기 86
코코아 터치 프레임워크의 팩토리 메서드 사용 96
요약 97
CHAPTER 5 추상 팩토리
TouchPainter 앱에 추상 팩토리 적용하기 102
코코아 터치 프레임워크의 추상 팩토리 사용 110
요약 114
CHAPTER 6 빌더
빌더 패턴이란? 116
빌더 패턴은 언제 사용하면 좋을까? 118
추적 게임의 캐릭터 만들기 119
요약 131
CHAPTER 7 싱글톤
싱글톤 패턴이란? 134
싱글톤 패턴은 언제 사용하면 좋을까? 135
Objective-C로 싱글톤 구현하기 136
싱글톤의 서브 클래스 만들기 142
스레드에서의 안전 143
코코아 터치 프레임워크의 싱글톤 사용 143
요약 145
PART III 인터페이스 맞추기
CHAPTER 8 어댑터
어댑터 패턴이란? 150
어댑터 패턴을 언제 사용하면 좋을까? 153
위임 이해하기 154
Objective-C 프로토콜로 어댑터 패턴 구현하기 155
iOS 4 또는 5의 Objective-C 블록을 사용해서 어댑터 패턴 구현하기 164
요약 172
CHAPTER 9 브리지
브리지 패턴이란? 174
브리지 패턴은 언제 사용하면 좋을까? 175
iOS의 가상 에뮬레이터 만들기 176
요약 185
CHAPTER 10 퍼사드
퍼사드 패턴이란? 188
퍼사드 패턴은 언제 사용하면 좋을까? 189
서브 시스템의 여러 인터페이스들에 대해 단순화된 인터페이스 제공하기 189
TouchPainter 앱에 퍼사드 패턴 사용하기 193
요약 196
PART IV 객체의 분리
CHAPTER 11 미디에이터
미디에이터 패턴이란? 202
미디에이터 패턴은 언제 사용하면 좋을까? 204
TouchPainter 앱의 뷰 전환 관리하기 204
요약 221
CHAPTER 12 옵저버
옵저버 패턴이란? 224
옵저버 패턴은 언제 사용하면 좋을까? 226
모델-뷰-컨트롤러에 옵저버 패턴 사용하기 226
코코아 터치 프레임워크에서 옵저버 패턴 사용하기 227
CanvasView의 스트로크 변경하기 230
요약 245
PART V 추상 컬렉션
CHAPTER 13 컴포지트
컴포지트 패턴이란? 250
컴포지트 패턴은 언제 사용하면 좋을까? 253
TouchPainter 앱의 Mark 사용법 이해하기 253
코코아 터치 프레임워크의 복합 구조 사용 267
요약 269
CHAPTER 14 이터레이터
이터레이터 패턴이란? 272
이터레이터 패턴은 언제 사용하면 좋을까? 275
코코아 터치 프레임워크의 이터레이터 사용하기 275
그림의 꼭짓점을 순환 처리하기 280
요약 293
PART VI 객체의 행동 확장
CHAPTER 15 비지터
비지터 패턴이란? 298
비지터 패턴을 언제 사용하면 좋을까? 301
비지터를 사용해서 TouchPainter의 Mark 그리기 301
그 밖에 비지터가 할 수 있는 일은? 312
비지터 대신 카테고리를 사용할 수 없을까? 312
요약 313
CHAPTER 16 데코레이터
데코레이터 패턴이란? 316
데코레이터 패턴은 언제 사용하면 좋을까? 317
객체의 “껍데기(외부적)” 변경 vs. “알맹이(내부적)” 변경 318
UIImage의 이미지 필터 만들기 319
요약 343
CHAPTER 17 책임 연쇄
책임 연쇄 패턴이란? 346
책임 연쇄 패턴은 언제 사용하면 좋을까? 348
RPG 게임에서 책임 연쇄 사용하기 348
요약 357
PART VII 알고리즘의 캡슐화
CHAPTER 18 템플릿 메서드
템플릿 메서드 패턴이란? 362
템플릿 메서드는 언제 사용하면 좋을까? 363
샌드위치를 만들기 위해 템플릿 메서드 사용하기 364
템플릿 메서드가 반드시 동작하게 만들기 374
템플릿 메서드에 추가 단계 넣기 377
코코아 터치 프레임워크의 템플릿 메서드 사용 381
요약 383
CHAPTER 19 스트래티지
스트래티지 패턴이란? 386
스트래티지 패턴은 언제 사용하면 좋을까? 387
UITextField에 데이터 검사 스트래티지 적용하기 387
요약 399
CHAPTER 20 커맨드
커맨드 패턴이란? 402
커맨드 패턴은 언제 사용하면 좋을까? 403
코코아 터치 프레임워크의 커맨드 패턴 사용 404
TouchPainter의 Undo/Redo 구현하기 407
그 외에 커맨드 객체가 할 수 있는 것은? 427
요약 428
PART VIII 성능과 객체 액세스
CHAPTER 21 플라이웨이트
플라이웨이트 패턴이란? 432
플라이웨이트 패턴은 언제 사용하면 좋을까? 434
꽃의 풀(pool)을 생성하기 435
요약 446
CHAPTER 22 449
프록시 패턴이란? 450
프록시 패턴은 언제 사용하면 좋을까? 452
가상 프록시를 사용해서 이미지를 지연-로드하기 452
코코아 터치 프레임워크의 프록시 패턴 사용 461
요약 464
PART IX 객체의 상태
CHAPTER 23 메멘토
메멘토 패턴이란? 470
메멘토 패턴은 언제 사용하면 좋을까? 472
TouchPainter에서 메멘토 패턴 사용하기 472
코코아 터치 프레임워크의 메멘토 패턴 491
요약 495
찾아보기 497
책속에서
많은 분들이 디자인 패턴에 대해 관심을 갖고 나름대로 파악하느라 노력을 많이 하셨을 겁니다. 그러나 매번 파악하는 데만 그치면 실제 자기 것이 될 수 없습니다. 어떤 플랫폼이나 분야의 애플리케이션을 개발하든 설계에 적용하려는 노력과 시도가 필요합니다. 그런 의미에서 이 책은 좋은 시도와 방법을 알려준다고 생각합니다. iOS의 코코아 터치 프레임워크를 기반으로 아이폰이나 아이패드의 모바일 앱 개발을 하려는(또는 하고 있는) 개발자들이라면 이 책을 꼭 읽어 보시기를 권합니다(Objetive-C는 어느 정도 알고 계실 거구요). 그리고 플랫폼과 프레임워크는 달라도 구글 안드로이드 기반의 모바일 앱을 개발하는 분들도 읽어 보시면 도움이 될 겁니다(Java를 잘 아실 것이므로 디자인 패턴을 이해하고 그것의 적용을 파악하는 데는 큰 문제없습니다).