Programming iOS 5 한국어판 [iOS 프로그래밍의 모든 것]
- 원서명Programming iOS 5: Fundamentals of iPhone, iPad, and iPod touch Development (ISBN 9781449319342)
- 지은이매트 뉴버그
- 옮긴이황진호
- ISBN : 9788960773745
- 58,000원
- 2012년 12월 17일 펴냄 (절판)
- 페이퍼백 | 1,252쪽 | 188*250mm
- 시리즈 : 모바일 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
이 책은 iOS를 개발하기 위해 알아야 하는 C 언어는 물론 오브젝티브C에 관한 기본 지식과 객체지향 프로그래밍의 본질, 개발 툴의 사용법과 함께 인스턴스화, 참조, 객체 간의 통신, 사용 중인 객체의 관리 방법 등 코코아 객체에 관한 모든 것을 소개하고, 주요 인터페이스 위젯과 기타 공통적으로 해야 할 작업에 관한 개관 등 iOS 프로그래밍을 하는 데 필요한 모든 기본 원리를 속속들이 다룬다.
[ 소개 ]
“뉴버그는 내가 가장 좋아하는 저자다. 그 밖에 무슨 말이 더 필요하겠는가.” – 존 그루버 / 블로그 데어링 파이어볼(Daring Fireball) 운영자
코코아 터치의 모든 기본기를 완벽하게 배우고, 아이폰과 아이패드 앱 개발 중에 발생하는 문제를 회피하는 방법을 익힌다. iOS 버전 5를 다루는 이번 개정증보판에서는 코코아에 대해 더 많은 내용을 파악하고, 오브젝티브C와 엑스코드를 효과적으로 활용하는 방법을 배운다. iOS 5를 철저하면서도 차근차근 다루는 이 책은 iOS 초보자에게는 물론, 이미 숙련된 개발자에게도 레퍼런스를 제공할 것이다.
ARC 메모리 관리, 스토리보드, 부모 뷰 컨트롤러, 페이지 뷰 컨트롤러, 외형 프락시, 코어 이미지, 이미터 레이어 등 iOS 5에 새로 도입된 기능들에 대해 배운다.
[ 이 책에서 다루는 내용 ]
■ 오브젝티브C 언어의 세부 사항과 객체지향 프로그래밍의 개념
■ 엑스코드(Xcode) 프로젝트의 구조와 전체 과정
■ 클래스 간과 수신 이벤트 간의 관계와 모델-뷰-컨트롤러 구조 등의 코코아 핵심 개념
■ 뷰와 레이어의 관리, 그리기, 합성, 애니메이션 방법
■ 뷰 컨트롤러와 그들 간의 관계, 그리고 nib과 스토리보드 관리
■ 스크롤 뷰, 테이블 뷰, 컨트롤 등의 모든 기본 인터페이스 객체
■ 소리, 비디오, 센서, 지도 등 코코아 프레임워크의 기능
■ 스레드와 네트워크 등의 고급 주제
[ 소개 ]
“뉴버그는 내가 가장 좋아하는 저자다. 그 밖에 무슨 말이 더 필요하겠는가.” – 존 그루버 / 블로그 데어링 파이어볼(Daring Fireball) 운영자
코코아 터치의 모든 기본기를 완벽하게 배우고, 아이폰과 아이패드 앱 개발 중에 발생하는 문제를 회피하는 방법을 익힌다. iOS 버전 5를 다루는 이번 개정증보판에서는 코코아에 대해 더 많은 내용을 파악하고, 오브젝티브C와 엑스코드를 효과적으로 활용하는 방법을 배운다. iOS 5를 철저하면서도 차근차근 다루는 이 책은 iOS 초보자에게는 물론, 이미 숙련된 개발자에게도 레퍼런스를 제공할 것이다.
ARC 메모리 관리, 스토리보드, 부모 뷰 컨트롤러, 페이지 뷰 컨트롤러, 외형 프락시, 코어 이미지, 이미터 레이어 등 iOS 5에 새로 도입된 기능들에 대해 배운다.
[ 이 책에서 다루는 내용 ]
■ 오브젝티브C 언어의 세부 사항과 객체지향 프로그래밍의 개념
■ 엑스코드(Xcode) 프로젝트의 구조와 전체 과정
■ 클래스 간과 수신 이벤트 간의 관계와 모델-뷰-컨트롤러 구조 등의 코코아 핵심 개념
■ 뷰와 레이어의 관리, 그리기, 합성, 애니메이션 방법
■ 뷰 컨트롤러와 그들 간의 관계, 그리고 nib과 스토리보드 관리
■ 스크롤 뷰, 테이블 뷰, 컨트롤 등의 모든 기본 인터페이스 객체
■ 소리, 비디오, 센서, 지도 등 코코아 프레임워크의 기능
■ 스레드와 네트워크 등의 고급 주제
목차
목차
- 1부 개발 언어
- 1장 C 언어
- 컴파일, 구문, 주석
- 변수 선언, 초기화, 데이터 형식
- 구조체
- 포인터
- 배열
- 연산자
- 흐름 제어와 조건
- 함수
- 포인터 매개변수와 주소 연산자
- 파일
- 표준 라이브러리
- 기타 전처리 지시자
- 데이터 형식 한정자
- 2장 객체 기반 프로그래밍
- 객체
- 메시지와 메소드
- 클래스와 인스턴스
- 클래스 메소드
- 인스턴스 변수
- 객체 기반 프로그래밍 철학
- 3장 오브젝티브C 객체와 메시지
- 인스턴스는 포인터로 참조
- 인스턴스 참조, 초기화, nil
- 인스턴스 참조와 대입
- 인스턴스 참조와 메모리 관리
- 메시지와 메소드
- 메시지 전송
- 메소드 선언
- 메소드 호출의 중첩
- 재정의 금지
- 매개변수 목록
- 인식할 수 없는 셀렉터
- 형 변환과 id 형식
- 메시지의 데이터 형식
- C 함수
- CFTypeRefs
- 블록
- 인스턴스는 포인터로 참조
- 4장 오브젝티브C 클래스
- 클래스와 상위 클래스
- 인터페이스와 구현
- 헤더 파일과 구현 파일
- 클래스 메소드
- 클래스의 비밀
- 5장 오브젝티브C 인스턴스
- 인스턴스가 만들어지는 과정
- 자동으로 만들어주는 인스턴스
- 인스턴스를 완전히 처음부터 만드는 방법
- Nib를 기반으로 인스턴스를 생성하는 방법
- 다형성
- self
- super
- 인스턴스 변수와 접근자
- 키/값 코딩
- 프로퍼티
- 초기화 메소드 작성법
- 인스턴스가 만들어지는 과정
- 2부 IDE
- 6장 엑스코드 프로젝트 분석
- 새로운 프로젝트
- 프로젝트 윈도우
- 내비게이터 창
- 유틸리티 창
- 편집 창
- 프로젝트 파일과 파일의 의존성
- 타겟
- 빌드 단계
- 빌드 설정
- 구성
- 스킴과 실행 위치
- 프로젝트에서 앱까지
- 빌드 설정
- 속성 리스트 설정
- Nib 파일과 스토리 보드 파일
- 기타 리소스
- 코드
- 프레임워크와 SDK
- 7장 Nib 관리
- Nib 편집 인터페이스 둘러보기
- 닥
- 캔버스
- 인스펙터와 라이브러리
- Nib 로딩과 File’s Owner
- Nib 작성과 로딩
- 아웃렛 연결
- 아웃렛을 생성하는 다른 방법
- 아웃렛에 대한 추가설명
- 동작 연결
- Nib 기반 인스턴스의 추가적인 초기화
- Nib 편집 인터페이스 둘러보기
- 8장 문서화
- 문서 윈도우
- 클래스 문서 페이지
- 샘플 코드
- 다른 자원
- 신속한 도움
- 심볼
- 헤더 파일
- 인터넷 자원
- 9장 프로젝트 라이프 사이클
- 장치 아키텍처 선택
- 지역화
- 코드 편집
- 자동 완성
- 코드 조각
- 실시간 문법 검사
- 코드 탐색
- 디버깅
- 케이브맨 디버깅
- 엑스코드 디버거
- 단위 테스트
- 정적 분석기
- 클린
- 시뮬레이터에서 실행
- 장치에서 실행
- 장치 관리
- 버전 관리
- 인스트루먼트
- 배포
- 애드 혹 배포
- 최종 앱 준비
- 앱의 아이콘
- 기타 아이콘
- 시작 이미지
- 스크린샷
- 프로퍼티 목록 설정
- 앱스토어에 제출
- 3부 코코아
- 10장 코코아 클래스
- 하위 클래스화
- 카테고리
- 클래스 분리
- 비밀 메소드 선언
- 프로토콜
- 선택 메소드
- 파운데이션 클래스
- 유용한 구조체와 상수
- NSString과 관련 클래스
- NSDate와 관련 클래스
- NSNumber
- NSValue
- NSData
- 동등과 비교
- NSIndexSet
- NSArray와 NSMUtableArray
- NSSet과 관련 클래스
- NSDictionary와 NSMutableDictionary
- NSNull
- 불변성과 가변성
- 프로퍼티 목록
- NSObject의 비밀 기능
- 11장 코코아 이벤트
- 이벤트의 사용 이유
- 하위 클래스화
- 알림
- 내장 알림 수신
- 등록 해제
- NSTimer
- 델리게이션
- 데이터 소스
- 동작
- 반응기 체인
- 책임 전가
- nil 타겟 동작
- 애플리케이션 일생 이벤트
- 이벤트의 쇄도
- 12장 접근자와 메모리 관리
- 접근자
- 키/값 코딩
- 메모리 관리
- 코코아 메모리 관리의 원칙
- 메모리 관리의 황금룰
- ARC의 정의와 동작
- 코코아 객체의 메모리 관리 방법
- 자동 해제
- 인스턴스 변수의 메모리 관리(ARC 이전)
- 인스턴스 변수의 메모리 관리(ARC)
- 유지 사이클과 약한 참조
- Nib 불러오기와 메모리 관리
- 전역 변수의 메모리 관리
- 포인터와 빈 Context Info의 메모리 관리
- CFTypeRefs의 메모리 관리
- 프로퍼티
- 13장 데이터 통신
- 모달-뷰-컨트롤러
- 인스턴스 가시성
- 인스턴스화에 의한 가시성
- 관계에 의한 가시성
- 전역 가시성
- 알림
- 키/값 관찰
- 4부 뷰
- 14장 뷰
- 윈도우
- 하위 뷰와 상위 뷰
- 프레임
- 경계와 중심
- 레이아웃
- 변환
- 가시성과 투명도
- 15장 드로잉
- UIImage와 UIImageView
- 그래픽스 컨텍스트
- UIImage 드로잉
- CGImage 드로잉
- CIFilter와 CIImage
- UIView 드로잉
- 그래픽 컨텍스트 설정
- 연결선과 드로잉
- 잘라내기
- 그레이디언트
- 색과 패턴
- 그래픽 컨텍스트 변환
- 그림자
- 점과 픽셀
- 컨텐트 모드
- 16장 레이어
- 뷰와 레이어
- 레이어와 하위 레이어
- 레이어 계층 조작
- 하위 레이어 위치 지정
- CAScrollLayer
- 하위 레이어의 레이아웃
- 레이어에서 그리기
- 콘텐츠 크기 조정과 위치 지정
- 자신을 그리는 레이어
- 변환
- 깊이
- 그림자, 경계, 기타
- 레이어와 키/값 코딩
- 17장 애니메이션
- 드로잉과 애니메이션, 스레딩
- UIImageView와 UIImage 애니메이션
- 뷰 애니메이션
- 애니메이션 블록
- 애니메이션 블록 수정
- 애니메이션 전환
- 블록 기반 뷰 애니메이션
- 암묵적인 레이어 애니메이션
- 애니메이션 트랜잭션
- 미디어 타이밍 함수
- 코어 애니메이션
- CABasicAnimation과 상속
- CABasicAnimation 사용
- 키 프레임 애니메이션
- 프로퍼티를 애니메이션 가능하게 만들기
- 그룹화된 애니메이션
- 전환
- 애니메이션 목록
- 동작
- 동작의 정의
- 동작 검색
- 동작 검색으로 연결
- 프로퍼티가 아닌 동작
- 이미터 레이어
- 18장 터치
- 터치 이벤트와 뷰
- 터치 수신
- 터치 제한
- 터치 해석
- 제스처 인식기
- 제스처 인식기 클래스
- 다중 제스처 인식기
- 제스처 인식기의 하위 클래스화
- 제스처 인식기 델리게이트
- 터치 전달
- 히트 테스트
- 최초 터치 이벤트 전달
- 제스처 인식기와 뷰
- 터치 제외 논리
- 인식
- 터치와 반응기 체인
- 5부 인터페이스
- 19장 뷰 컨트롤러
- 뷰 컨트롤러 계층 구조
- 뷰 컨트롤러와 뷰 생성
- 매뉴얼 뷰
- 일반 자동 뷰
- 분리된 nib의 뷰
- Nib에서 인스턴스화된 뷰 컨트롤러
- 스토리보드로 인스턴스화된 뷰 컨트롤러
- 회전
- 회전 이벤트
- 최초 방향
- 나타낸 뷰 컨트롤러
- 나타낸 뷰 애니메이션
- 출력 스타일
- 나타낸 뷰와 회전
- 탭 바 컨트롤러
- 탭 바 아이템
- 탭 바 컨트롤러 설정
- 내비게이션 컨트롤러
- 바 버튼 아이템
- 내비게이션 아이템
- 툴바 아이템
- 내비게이션 컨트롤러 설정
- 페이지 뷰 컨트롤러
- 컨테이너 뷰 컨트롤러
- 스토리보드
- 뷰 컨트롤러 일생 이벤트
- 뷰 컨트롤러 메모리 관리
- 20장 스크롤 뷰
- 스크롤 뷰 생성
- 스크롤하기
- 페이징
- 타일링
- 확대 축소
- 프로그램적으로 확대 축소
- 상세 확대
- 스크롤 뷰 델리게이트
- 스크롤 뷰 터치
- 스크롤 뷰 성능
- 21장 테이블 뷰
- 테이블 뷰 셀
- 내장된 셀 형식
- 맞춤형 셀
- 테이블 뷰 데이터
- 중요한 세 가지 질문
- 테이블 뷰 섹션
- 테이블 뷰 데이터 리플래싱
- 가변 열 높이
- 테이블 뷰 선택
- 테이블 뷰 스크롤과 레이아웃
- 테이블 뷰 검색
- 테이블 뷰 편집
- 테이블 아이템 삭제
- 테이블 아이템에서 편집 가능한 아이템
- 테이블 아이템 삽입
- 테이블 아이템 재배치
- 동적 테이블 컨텐트
- 테이블 뷰 메뉴
- 테이블 뷰 셀
- 22장 팝오버와 스플릿 뷰
- 팝오버 설정과 출력
- 팝오버 관리
- 팝오버 해제
- 팝오버 전환
- 자동 팝오버
- 스플릿 뷰
- 23장 텍스트
- UILabel
- UITextField
- 편집과 키보드
- 키보드 설정
- 텍스트 필드 델리게이트와 제어 이벤트 메시지
- 텍스트 필드 메뉴
- UITextView
- 코어 텍스트
- 24장 웹 뷰
- 컨텐트 로딩
- 웹 뷰와 통신
- 25장 컨트롤과 기타 뷰
- UIActivityIndicatorView
- UIProgressView
- UIPickerView
- UISearchBar
- UIControl
- UISwitch
- UIStepper
- UIPageControl
- UIDatePicker
- UISlider
- UISegmentedControl
- UIButton
- 맞춤형 컨트롤
- 바
- UINavigationBar
- UIToolbar
- UITabBar
- 외형 프락시
- 26장 모달 대화상자
- 경고창 뷰
- 동작 화면
- 대화상자 대체물
- 지역 알림
- 6부 추가 프레임워크
- 27장 오디오
- 시스템 소리
- 오디오 세션
- 인터럽트
- 변경 전달
- 오디오 플레이어
- 소리의 원격 제어
- 백그라운드에서 소리 재생
- 소리에 대한 추가적인 주제
- 28장 비디오
- MPMoviePlayerController
- MPMoviePlayerViewController
- UIVideoEditorController
- AV 파운데이션 비디오 소개
- 29장 음악 라이브러리
- 음악 라이브러리 탐색
- 뮤직 플레이어
- 뮤직 피커
- 30장 사진 라이브러리와 이미지 캡처
- UIImagePickerController
- 사진 라이브러리에서 선택
- 카메라 사용
- AV 파운데이션으로 이미지 캡처
- Assets 라이브러리 프레임워크
- UIImagePickerController
- 31장 주소록
- 주소록 데이터베이스
- 주소록 인터페이스
- ABPeoplePickerNavigationController
- ABPersonViewController
- ABNewPersonViewController
- ABUnknownPersonViewController
- 32장 캘린더
- 캘린더 데이터베이스
- 캘린더 인터페이스
- 33장 메일
- 메일 메시지
- SMS 메시지
- 34장 지도
- 지도 표시
- 애노테이션
- 오버레이
- 35장 센서
- 위치
- 맵 킷과 코어 로케이션
- 지오코딩
- 위치 매니저
- 방향
- 가속과 자세
- 흔들기 이벤트
- 가공되지 않은 가속도
- 자이로스코프
- 위치
- 7부 마지막 주제
- 36장 영구 저장소
- 샌드박스
- 기본 파일 동작
- 파일 저장과 읽기
- 사용자 기본 값
- 파일 공유
- 문서 형식
- 문서 전달
- 문서 구조
- XML
- SQLite
- 그림 파일 형식
- 37장 기본 네트워킹
- HTTP 요청
- 봉주르
- 푸시 알림
- 기본 네트워킹을 넘어서
- 38장 스레드
- 메인 스레드
- 스레드가 어려운 이유
- 스레드의 세 가지 방법
- 매뉴얼 스레드
- NSOperation
- 그랜드 센트럴 디스패치
- 스레드와 앱 백그라운드화
- 39장 실행 취소
- 실행 취소 매니저
- 실행 취소 인터페이스
- 실행 취소 구조