book.jayu.org
코코아 프로그래밍

코코아 프로그래밍

아론 힐리가스, 아담 프레블, 박진형

인사이트·2012-11-12

  • 기술과학
  • KDC 005.135

로그인하면 내 서재에 추가할 수 있어요.

책 소개

10년 전, 운영체제와 개발 환경도 매력적인데, 외관까지 너무나 아름다운 제품이었던 iBook을 처음 사용하며 설레고 흥분했던 기억이 납니다. 지금은 인텔 CPU를 사용한 맥뿐만 아니라 아이폰의 등장으로, 이제 애플의 제품들이 우리나라에서 친근해졌지만, 제가 처음 맥을 접했을 당시에는 주변에서 맥을 쓰는 사람을 찾아보기가 굉장히 힘들었습니다. 하지만 너무나 마음에 들었던 플랫폼이라 조금 더 많은 사람들이 사용했으면 좋겠단 생각, 그리고 이를 위해 개발자들도 더 많아지면 좋겠다는 생각에 코코아 프로그래밍을 번역하기로 마음먹었었습니다. 이러한 생각에서 첫 코코아 프로그래밍을 번역한지가 벌써 7년이나 지났습니다. 원서로는 이번이 네 번째 판이며 번역서로는 세 번째 판입니다. 감히 말씀드리자면, 이 책은 최고의 코코아 프로그래밍 입문서라고 할 수 있습니다. 이 생각은 7년 전이나 지금이나 변함이 없습니다. 입문서라고는 했지만, iOS든 맥 OS X이든, 애플의 개발 환경에 어느 정도 익숙해진 중급 개발자들에게도 다시 한 번 전반적으로 개발 환경을 점검해 볼 수 있는 좋은 책이 될 것입니다. 애플은 iOS의 프레임워크와 맥 OS X의 프레임워크 사이의 차이점을 줄이려고 많은 노력을 하고 있다고 생각합니다. 그래서 최종적으로는 iOS에서 개발하던 개발자도 맥 OS X용 애플리케이션을 바로 개발할 수 있고, 반대로 맥 OS X 애플리케이션의 개발자도 iOS용 애플리케이션을 개발할 수 있게 되지 않을까 합니다. iOS의 전신도 맥 OS X이니 만큼, 이 코코아 프로그래밍을 통해서 iOS 애플리케이션 개발을 하시던 분들도 iOS 개발 환경의 뿌리를 알 수 있는 좋은 기회가 될 것입니다. 꾸준히 코코아 프로그래밍의 번역서가 나올 수 있도록 도움을 주시는 인사이트의 한기성 사장님, 수많은 저의 오타를 잡느라 고생하신 김승호, 조인영 님께 감사의 말씀을 전합니다. 엄청난 개발의 즐거움을 선사해준 App4Me의 한민석 군, 박세현 군, 그리고 iOS 개발에 많은 센스를 알려준 FANCY의 정동기 님, iOS만 하던 저에게 안드로이드를 맡기느라 고생하는 매트릭스의 네오 같은 FANCY의 신해수 님께도 감사의 말을 전합니다. 마지막으로 항상 옆에서 용기를 주고 격려해 준 사랑하는 아내, 효정에게도 감사의 말을 전합니다. 이 코코아 프로그래밍을 보시는 모든 독자께도 감사의 말을 전합니다! iOS 앱스토어, 맥 앱스토어 두 곳 모두에서 대박나시길 바랍니다! :D

목차펼치기

옮긴이의 글 지은이의 글 감사의 글 1장 코코아: 그게 뭐야? 작은 역사 개발 도구 언어 객체, 클래스, 메서드, 메시지 프레임워크 이 책을 어떻게 읽을 것인가? 이 책의 표기법 일반적인 실수 어떻게 배울 것인가? 2장 시작해보자! Xcode 인터페이스 빌더에서 Xcode로 되돌아와서 문서 지금까지 배운 내용 시간에 따른 애플리케이션의 흐름 3장 Objective-C 인스턴스를 생성하고 사용하기 기존 클래스들을 사용하기 나만의 클래스 만들기 디버거 여러분은 무엇을 했나? 정적 분석기에 대해 더 파고들기 - 메시지는 어떻게 동작하나? 문제 4장 메모리 관리 참조 수와 함께하기 접근자 메서드 ARC 사용하기 5장 타깃/액션 일반적인 NSControl의 서브클래스 SpeakLine 예제 시작하기 XIB 파일 레이아웃 SpeakLineAppDelegate 클래스 구현 더 파고들기 - 코드를 작성하여 타깃 설정하기 문제 디버깅 힌트 6장 도우미 객체 델리게이트 NSTableView와 그 dataSource 사용자 인터페이스 레이아웃 연결하기 SpeakLineAppDelegate.m 편집하기 더 파고들기 - 델리게이트는 어떻게 동작하나? 문제 - 델리게이트 만들기 문제 - 데이터 소스 만들기 7장 키-밸류 코딩, 키-밸류 옵저빙 키-밸류 코딩 바인딩(Binding) 키-밸류 옵저빙(Key-Value Observing) 키를 관찰할 수 있도록 만들기 프로퍼티(Property) 더 파고들기 - 키 경로(Key Paths) 더 파고들기 - 키-밸류 옵저빙(Key-Value Observing) 8장 NSArrayController RaiseMan 애플리케이션 시작하기 키-밸류 코딩과 nil 정렬 기능 추가하기 더 파고들기 - NSArrayController 없이 정렬하기 문제 1 문제 2 9장 NSUndoManager NSInvocation NSUndoManager는 어떻게 동작할까? RaiseMan에 취소하기 기능 추가하기 키-밸류 옵저빙 내용 편집에 대한 취소하기 기능 추가할 때 편집 시작하기 더 파고들기 - 윈도와 취소하기 관리자 10장 아카이브 NSCoder와 NSCoding 도큐먼트 아키텍처 저장하기와 NSKeyedArchiver 불러오기와 NSKeyedUnarchiver 파일 유형에 맞는 확장자와 아이콘 설정하기 더 파고들기 - 무한 루프 방지 더 파고들기 - 프로토콜 만들기 더 파고들기 - 자동 문서 저장 기능 더 파고들기 - 취소 기능이 없는 도큐먼트 기반 애플리케이션 Universal Type Identifier 11장 코어 데이터 기초 NSManagedObjectModel 인터페이스 더 파고들기 - 뷰 기반 테이블 뷰 vs 셀 기반 테이블 뷰 문제 12장 NIB 파일과 NSWindowController NSPanel 애플리케이션에 패널을 추가하기 더 파고들기 - NSBundle 문제 13장 사용자 기본설정 NSDictionary와 NSMutableDictionary NSUserDefaults 기본 설정하기 사용자가 기본설정을 편집할 수 있도록 하기 기본설정 사용하기 더 파고들기 - NSUserDefaultsController 더 파고들기 - 명령행에서 기본설정 읽어오고 쓰기 문제 14장 노티피케이션 사용하기 노티피케이션이란 무엇인가 노티피케이션이 아닌 것? NSNotification NSNotificationCenter 노티피케이션 알리기 옵저버 등록하기 도착한 노티피케이션 다루기 userInfo 딕셔너리 더 파고들기 - 델리게이트와 노티피케이션 문제 15장 경고 패널 사용하기 사용자에게 삭제 여부 확인하기 문제 16장 지역화 NIB 파일 지역화하기 문자열 표 더 파고들기- ibtool 더 파고들기 - 형식 문자열에서 토큰의 명확한 순서 정하기 17장 커스텀 뷰 뷰의 계층 뷰에 그리기 NSBezierPath로 그리기 NSScrollView 인터페이스 빌더 없이 뷰 생성하기 더 파고들기 - 셀 더 파고들기 - isFlipped 문제 18장 이미지와 마우스 이벤트 NSResponder NSEvent 마우스 이벤트 얻기 NSOpenPanel 사용하기 여러분의 뷰에 이미지 합치기 뷰의 좌표계 자동 스크롤 더 파고들기 - NSImage 문제 19장 키보드 이벤트 NSResponder NSEvent 사용자 뷰로 새로운 프로젝트 생성하기 더 파고들기 - 롤오버 흐릿한 파란 상자 20장 속성이 있는 문자열 그리기 NSFont NSAttributedString 문자열과 속성을 가진 문자열 그리기 문자가 나타나도록 만들기 뷰를 PDF로 저장하기 더 파고들기 - NSFontManager 문제 1 문제 2 21장 페이스트보드와 Nil-Targeted 액션 NSPasteboard BigLetterView에 잘라내기, 복사하기, 붙여넣기를 추가하기 Nil-Targeted 액션 더 파고들기- 어떤 객체가 액션 메시지를 실제로 보낼까? 더 파고들기 - UTIs와 페이스트보드 더 파고들기- 느린 복사 문제 1 문제 2 22장 카테고리 NSString에 메서드 추가하기 더 파고들기- 비공개 메서드 사용하기 23장 드래그 & 드롭 BigLetterView를 드래그 출발지로 만들기 BigLetterView를 드래그 목적지로 만들기 더 파고들기 - 드래그 연산 마스킹하기 24장 NSTimer 인터페이스 레이아웃 연결 만들기 TutorController에 코드 추가하기 더 파고들기 - NSRunLoop 문제 25장 시트 시트 추가하기 더 파고들기 - 콘텍스트 정보 더 파고들기 - 모달 윈도(Modal Window) 26장 NSFormatter 만들기 기본 포매터 NSControl 클래스의 델리게이트 부분 문자열 검사하기 속성이 부여된 문자열을 리턴하는 포매터 더 파고들기 - NSValueTransformer 27장 인쇄 페이지 매김 더 파고들기 - 화면에도 그릴 수 있나? 문제 28장 웹 서비스 RanchForecast 프로젝트 URL 열기 문제 - WebView 추가하기 29장 블록 블록 문법 문제 - 델리게이트 디자인 30장 iOS를 위한 개발 RanchForecast를 iOS로 이식하기 RootViewController 내비게이션 컨트롤러 추가하기 ScheduleViewController UITableViewController 뷰 컨트롤러 밀어넣기 문제 31장 뷰 전환 시작하기 뷰 전환을 MyDocument에 추가하기 윈도 크기 변경하기 32장 코어 데이터 관계 데이터 모델 편집하기 커스텀 NSManagedObject 클래스 생성 인터페이스 레이아웃 이벤트와 nextResponder 33장 코어 애니메이션 이미지 뿌리기 숨겨진 애니메이션과 액션 문제 1 문제 2 34장 동시성 멀티스레딩(Multithreading) Scattered 프로젝트 향상시키기: 인스트루먼츠(Instruments)에서 타이밍 프로파일링 NSOperationQueue 더 파고들기 - 더 빠른 Scattered 애플리케이션 문제 35장 코코아와 OpenGL 간단한 코코아/OpenGL 애플리케이션 작성하기 36장 NSTask ZIPspector 문제 - .tar와 .tgz 파일들 37장 애플리케이션 배포하기 빌드 설정 릴리스 빌드 만들기 애플리케이션 샌드박싱(Sandboxing) 맥 앱 스토어(Mac App Store) 38장 마치며 찾아보기 547

출처: 국립중앙도서관 서지정보

리뷰 남기기

로그인하면 리뷰를 남길 수 있어요.

리뷰 0개

아직 리뷰가 없어요.