우리가 즐겨 사용하는 모바일 디바이스인 아이폰과 아이패드! 멋진 성능을 자랑하는 이 기기들도 그것을 움직일 운영체제나 소프트웨어가 없다면 아무런 소용이 없다. 이 책은 애플의 스마트한 기기들로 다양한 일을 할 수 있도록 해주는 iOS 9 운영체제와 애플리케이션 프로그래밍에 대한 모든 것을 담은 책이다. iOS 9으로 프로그래밍을 하고자 하는 모든 분에게 아주 좋은 자습서이자 참고서가 되어줄 것이다.
이 책은 기초부터 시작하며, iOS 개발 환경을 구축하는 데 필요한 전반적인 내용을 제공한다. iOS 9의 아키텍처와 스위프트 프로그래밍에 관해 소개하며, iOS 애플리케이션과 사용자 인터페이스 설계에 관해서도 자세히 살펴본다. 아울러 파일 핸들링, 데이터베이스 관리, 앱 내 결제, 그래픽 드로잉, 그리고 애니메이션을 다루며, 터치스크린 핸들링, 제스처 인식, 멀티태스킹, iAd 통합, 위치 관리, 로컬 노티피케이션, 카메라 접근, 그리고 비디오 및 오디오 재생에 관한 지원도 다룬다. 이외에도 자동 레이아웃, 트위터 및 페이스북 통합, 앱 내 결제 내용을 관리하는 앱 스토어 등을 포함한 다른 기능들도 다룬다. 게다가 SpriteKit 기반의 게임 개발, 로컬 맵 검색, 그리고I KUit 다이내믹스를 이용한 사용자 인터페이스 애니메이션 등을 포함한 다른 기능들에 대한 내용도 포함하고 있다.
스위프트 플레이그라운드, 사이즈 클래스를 이용한 유니버셜 사용자 인터페이스 설계, 인터페이스 빌더 라이브 뷰, 임베디드 프레임워크, CloudKit 데이터 저장소, 그리고 터치아이디 인증을 포함하여 Xcode 7을 이용한 iOS 개발의 다른 기능들도 다룰 것이다. 또한, 스위프트 2에서의 새로운 에러 처리 방법과 스택 뷰 기반의 사용자 인터페이스 설계, 다중 스토리보드 지원, 아이패드 멀티태스킹, 맵 플라이오버 지원, 3D 터치, 그리고 픽처 인 픽처 미디어 재생이라는 iOS 9과 Xcode 7의 새로운 핵심 기능들에 대해서도 자세히 설명하고 있다.
이 책의 목적은 iOS 9 SDK와 Xcode 7, 그리고 스위프트 2 프로그래밍 언어를 이용하여 iOS 애플리케이션을 생성하는 데 필요한 기술을 가르치는 것이다. 여러분이 iOS 개발이 처음인지, 아니면 iOS 8 개발 경험이 있어서 iOS 9의 기능들과 최신 스위프트 프로그래밍 언어를 빠르게 습득하고자 하는지에 따라 이 책의 활용 방법이 크게 달라지겠지만, 이 책은 양쪽 모두를 대상으로 하는 최고의 iOS 참고서이므로 안심하고 배울 수 있다.
지은이 소개
닐 스미스(Neil Smyth)
닐 스미스는 20년이 넘도록 IT 개발에 몸담고 있다. 특히, 프로그래밍 언어와 기업용 개발 도구, 사용자 인터페이스 디자인을 전문으로 해왔으며, 시스템 프로그래밍과 웹 개발, 마케팅까지 담당하기도 했다. 닐은 IT 학사 외에 Network+, Project+, 자바와 마이크로소프트 MCP 자격증들을 보유하고 있다. 또한 30여 종의 기술 관련 서적을 집필하였으며, 현재는 미국에서 인터넷 출판과 모바일 애플리케이션 개발 회사인 Payload Media의 공동 창업자이자 CEO로 재직 중이다.
옮긴이 소개
황반석
인디카 맥주의 맛을 알아 버린 옮긴이는 한양대학교에서 컴퓨터 공학을 전공한 후로 지금까지 개발자의 길을 걷고 있다. 모바일 시대가 시작되고 나서 다양한 플랫폼의 애플리케이션을 개발해 왔으며, 특히 iOS 앱 개발에 주력하고 있다. 옮긴 책으로는 《핵심만 골라 배우는 iOS 9 프로그래밍》을 포함해 11종이 있다. 번역한 책들의 독자를 위한 인터넷 카페(http://cafe.naver.com/petersbook)도 운영 중이다.
차례
CHAPTER 1 시작하기 _1
CHAPTER 2 애플 개발자 프로그램 가입하기 _5
CHAPTER 3 Xcode 7과iOS 9 SDK 설치하기 _9
CHAPTER 4 Xcode 7 가이드 투어 _13
CHAPTER 5 Xcode 7 플레이그라운드소개 _31
CHAPTER 6 스위프트 데이터 타입과 상수, 그리고 변수 _45
CHAPTER 7 스위프트 연산자와 표현식 _62
CHAPTER 8 스위프트 흐름 제어 _74
CHAPTER 9 스위프트 switch문 _84
CHAPTER 10 스위프트 2 함수와 메서드 그리고 클로저의 개요 _90
CHAPTER 11 스위프트의 객체 지향 프로그래밍 기초 _104
CHAPTER 12 스위프트의 서브클래싱과 익스텐션의 개요 _114
CHAPTER 13 스위프트의 배열과 딕셔너리 컬렉션으로 작업하기 _121
CHAPTER 14 스위프트의 에러 핸들링 이해하기 _131
CHAPTER 15 iOS 9 애플리케이션 구조와 개발 아키텍처 _137
CHAPTER 16 상호 작용하는 iOS 9 앱 만들기 _142
CHAPTER 17 iOS 9 뷰, 윈도우, 그리고 뷰 계층 이해하기 _154
CHAPTER 18 iOS 9 자동 레이아웃 소개 _159
CHAPTER 19 인터페이스 빌더에서 iOS 9 자동 레이아웃 컨스트레인트로 작업하기 _165
CHAPTER 20 iOS 9 자동 레이아웃 예제 _184
CHAPTER 21 코드로 iOS 9 자동 레이아웃 컨스트레인트 구현하기 _192
CHAPTER 22 iOS 9에서 교차 계층 구조 자동 레이아웃 컨스트레인트 구현하기 _200
CHAPTER 23 iOS 9 자동 레이아웃 시각적 형식 언어 이해하기 _205
CHAPTER 24 사이즈 클래스를 이용하여 유니버셜 iOS 사용자 인터페이스 설계하기 _210
CHAPTER 25 Xcode 7에서 스토리보드 사용하기 _223
CHAPTER 26 여러 스토리보드 파일로 화면 구성하기 _233
CHAPTER 27 Xcode 7의 스토리보드를 이용한 iOS 9 탭 바 애플리케이션 만들기 _238
비밀댓글입니다
비밀댓글입니다