HOME > 상세정보

상세정보

(꼼꼼한 재은 씨의) 스위프트 3. [1] 기본편 : iOS 앱 개발을 위한 swift 바이블 [개정판]

(꼼꼼한 재은 씨의) 스위프트 3. [1] 기본편 : iOS 앱 개발을 위한 swift 바이블 [개정판] (19회 대출)

자료유형
단행본
개인저자
이재은
서명 / 저자사항
(꼼꼼한 재은 씨의) 스위프트 3 = Swift 3 : iOS 앱 개발을 위한 swift 바이블. [1], 기본편 / 이재은 지음
판사항
[개정판]
발행사항
부천 :   루비페이퍼,   2016  
형태사항
xxii, 1490 p. : 삽화 ; 26 cm
ISBN
9791186710104
일반주기
색인수록  
000 00000nam c2200205 c 4500
001 000045889054
005 20161128093943
007 ta
008 161125s2016 ggka 001c kor
020 ▼a 9791186710104 ▼g 93000
040 ▼a 211009 ▼c 211009 ▼d 211009
082 0 4 ▼a 005.133 ▼2 23
085 ▼a 005.133 ▼2 DDCK
090 ▼a 005.133 ▼b S977 2016z3 ▼c 1
100 1 ▼a 이재은
245 2 0 ▼a (꼼꼼한 재은 씨의) 스위프트 3 = ▼x Swift 3 : ▼b iOS 앱 개발을 위한 swift 바이블. ▼n [1], ▼p 기본편 / ▼d 이재은 지음
250 ▼a [개정판]
260 ▼a 부천 : ▼b 루비페이퍼, ▼c 2016
300 ▼a xxii, 1490 p. : ▼b 삽화 ; ▼c 26 cm
500 ▼a 색인수록
945 ▼a KLPA

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.133 S977 2016z3 1 등록번호 111766657 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.133 S977 2016z3 1 등록번호 121238227 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.133 S977 2016z3 1 등록번호 111766657 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.133 S977 2016z3 1 등록번호 121238227 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

책소개

스위프트 3의 기본 문법과 구문을 설명하고 있으며, 객체 지향 언어의 특징과 타입 추론, 클로저, 추상화 등 모던 프로그래밍 언어의 핵심, 그리고 일급 함수로 대표되는 함수형 프로그래밍의 특성까지를 포함한 고급 문법을 쉽고 자세하게 다룬다.

또한 iOS에서 앱을 제작하기 위해 알아야 하는 뷰 컨트롤러와, 화면을 스위프트 코드로 제어하기 위한 방법, 화면을 전환하고 화면 간 데이터를 교환하는 방법, 그리고 델리게이트 패턴을 이용하여 기능 처리를 전담 객체에 위임하는 방법 등을 실습과 함께 자세하게 소개한다. 이와 함께 카메라나 앨범 이미지 등을 스위프트 코드로 다루는 방법과 알림창을 활용하여 로그인 화면을 구성하는 방법, 로컬 알림 등 다양한 형식으로 앱 인터페이스를 설계하는 방식에 대해서도 다루고 있다.

1부. 스위프트 3의 문법을 사용하여 iOS 기반의 앱을 만들기 위해 반드시 알아야 할 기본 개념을 학습합니다.
이 책은 가장 최근에 발표된 스위프트 3의 기본 문법과 구문을 설명하고 있으며, 객체 지향 언어의 특징과 타입 추론, 클로저, 추상화 등 모던 프로그래밍 언어의 핵심, 그리고 일급 함수로 대표되는 함수형 프로그래밍의 특성까지를 포함한 고급 문법을 쉽고 자세하게 다룹니다. 또한 iOS에서 앱을 제작하기 위해 알아야 하는 뷰 컨트롤러와, 화면을 스위프트 코드로 제어하기 위한 방법, 화면을 전환하고 화면 간 데이터를 교환하는 방법, 그리고 델리게이트 패턴을 이용하여 기능 처리를 전담 객체에 위임하는 방법 등을 실습과 함께 자세하게 소개합니다. 이와 함께 카메라나 앨범 이미지 등을 스위프트 코드로 다루는 방법과 알림창을 활용하여 로그인 화면을 구성하는 방법, 로컬 알림 등 다양한 형식으로 앱 인터페이스를 설계하는 방식에 대해서도 다루고 있습니다.

이에 더하여 애플의 통합개발환경 Xcode에서 제공하는 각종 도구와 기능까지 자세하게 소개함으로써, 인터랙티브 환경에서 앱 개발을 좀 더 쉽고 빠르게 하는 방법을 안내합니다.

특히 스위프트 문법의 설명을 나열하거나 앱을 만드는 과정과 결과만 보여주는 것으로 그치지 않고 왜 그렇게 동작하는지 주요 개념에 대한 원리를 그림과 함께 꼼꼼하게 짚어줌으로써, 이후에는 독자 스스로 응용해서 앱을 만들 수 있도록 돕습니다.

2부. 18개의 실습과 1개의 실전 프로젝트로 스위프트 프로그래밍을 완성합니다.
이 책의 가장 큰 장점이자 특징은 독자가 스위프트를 이용하여 진짜 앱을 만들어 볼 수 있다는 점입니다. 독자는 1부에서 학습한 스위프트의 문법과 주요 UI 객체들을 활용하여 개봉 중인 영화 차트를 출력하는 앱을 만들어 볼 수 있습니다. 앱을 만드는 전체 과정은 초보자도 쉽게 따라서 할 수 있도록 차근차근 단계별로 구성하였으며 핵심 개념과 동작 원리를 그림을 곁들여 쉽고 꼼꼼하게 설명합니다.

독자들은 처음에는 단순하게 목록을 출력하는 과정부터 학습을 시작하여, 나중에는 루비페이퍼에서 제공하는 서버를 통해 네트워크 통신으로 데이터를 읽어와 출력하는 과정까지 단계적으로 점차 기능을 확장해 나가게 됩니다. 여기에 더하여 웹 뷰에서 영화 상세 웹 페이지를 앱에서 접속하거나 맵킷 프레임워크를 이용하여 지도에 상영관 위치를 표시하고, 여러 디바이스에 어울리는 화면을 설계하는 등 실제 앱 개발에서 유용하여 사용할 수 있는 여러 가지 기능들도 전체 소스와 함께 자세한 설명이 제공됩니다. 이를 통해 하나의 앱이 점차 완성되어 가는 과정을 실제로 경험해 볼 수 있습니다.

(이 과정은 모두 Xcode 8과 iOS 10을 기준으로 작성되었습니다. )


정보제공 : Aladin

저자소개

이재은(지은이)

통영에서 고등학교를 졸업한 후 서울로 상경하여 e러닝 분야에서 컴퓨터 관련 업무를 맡은 것을 계기로 하여 프로그래머의 길로 들어섰다. 현재 19년 차 프로그래머로 재직중이며, 한양대학교 모바일SW사업단, 데브멘토, Udemy 등에서 현대 프로그래밍 언어에 대한 특강을 진행하고 있다. 10대 후반~ 20대 초반, 월급날 직전에 돈이 없어 프라이드치킨을 사 먹지 못한 강렬한 기억 때문에 현재까지도 월급날 2~3일 전만 되면 프라이드치킨이 먹고 싶어지는 트라우마를 가지고 있다. 첫 책을 통해 이 사실이 알려진 후 주변에서 치킨을 사주겠다는 약속을 많이 하였으나 실제로 이루어진 것이 없어 아쉬워하던 차에 2017년 9월 23일, 일부 뜻 있는 주변 프로그래머들의 도움으로 말미암아 드디어 트라우마 극복을 위한 첫 발걸음을 내딛게 되었다.

정보제공 : Aladin

목차

CHAPTER 01 애플의 새로운 언어, 스위프트 
1.1 스위프트 언어의 탄생과 배경 
1.2 스위프트 언어의 특징 
1.2.1 스위프트 언어에서 차용하고 있는 주요 기능들 
1.2.2 구조적 특징 
1.3 오브젝티브-C vs 스위프트 

CHAPTER 02 Xcode와 친해지기 
2.1 통합개발 환경 
2.1.1 통합개발 환경 이전의 프로그래밍 
2.1.2 통합개발 환경의 등장 
2.2 Xcode란? 
2.3 Xcode 설치하기 
2.3.1 정식 버전 설치 : 앱스토어를 통하여 
2.3.2 베타 버전 설치 : 애플 개발자 사이트 
2.4 Xcode 실행하기 
2.4.1 첫 번째 메뉴, 플레이그라운드 시작하기 
2.4.2 두 번째 메뉴, Xcode 프로젝트 생성하기 
2.5 Xcode의 구성 요소 
2.5.1 툴바 영역(ToolBar Area) 
2.5.2 내비게이터 영역 
2.5.3 에디터 영역 
2.5.4 디버그 영역 
2.5.5 인스펙터 영역 
2.5.6 라이브러리 영역 
2.6 iOS 앱 시뮬레이터 
2.6.1 앱 시뮬레이터의 사용 방법 
2.6.2 앱 시뮬레이터의 고급 기능 
2.7 Xcode 제약 사항 
2.7.1 앱 빌드 시 주의 사항 
2.7.2 디바이스에 앱을 설치할 때 주의할 점 

CHAPTER 03 기본 문법 : 이것이 바로 스위프트 
3.1 스위프트 기초 문법 
3.2 변수와 상수 
3.2.1 선언과 초기화 
3.2.2 변수와 상수의 이름 정의하기 
3.3 자료형 
3.3.1 기본 자료형 
3.3.2 타입 추론과 타입 어노테이션 
3.3.3 타입이 다른 변수끼리의 결합 
3.4 연산자 
3.4.1 산술 연산자 
3.4.2 비교 연산자 
3.4.3 논리 연산자 
3.4.4 범위 연산자 
3.4.5 대입 연산자 
3.4.6 증감 연산자(현재는 지원하지 않음) 

CHAPTER 04 흐름 제어 구문 코드의 활용성을 높여주는 도구들 
4.1 반복문 
4.1.1 for~in 구문 
4.1.2 while 구문 
4.1.3 repeat~while 구문 
4.2 조건문 
4.2.1 if 구문 
4.2.2 guard 구문 
4.2.3 #available 구문 
4.2.4 switch 구문 
4.3 제어 전달문 
4.3.1 break 
4.3.2 continue 
4.3.3 구문 레이블과 break, continue 

CHAPTER 05 집단 자료형 : 연관된 데이터를 손쉽게 다루기 
5.1 배열 
5.1.1 배열 순회 탐색 
5.1.2 배열의 동적 선언과 초기화 
5.1.3 배열 아이템 동적 추가 
5.1.4 범위 연산자를 이용한 인덱스 참조 
5.2 집합 
5.2.1 집합의 정의 
5.2.2 집합 순회 탐색 
5.2.3 집합의 동적 추가와 삭제 
5.2.4 집합 연산 
5.3 튜플 
5.4 딕셔너리 
5.4.1 딕셔너리의 선언과 초기화 
5.4.2 딕셔너리에 동적으로 아이템 추가하기 
5.4.3 딕셔너리의 순회 탐색 

CHAPTER 06 옵셔널 : 스위프트가 잠재적 오류를 다루는 방법 
6.1 옵셔널 타입 선언과 정의 
6.2 옵셔널 값 처리 
6.2.1 옵셔널 강제 해제 
6.2.2 옵셔널 바인딩 
6.2.3 컴파일러에 의한 옵셔널 자동 해제 
6.2.4 옵셔널의 묵시적 해제 

CHAPTER 07 함수 : 함수가 갑입니다 
7.1 함수의 기본 개념 
7.1.1 사용자 함수 정의 
7.1.2 함수의 호출 
7.1.3 함수의 반환값과 튜플 
7.2 매개변수 
7.2.1 내부 매개변수명, 외부 매개변수명 
7.2.2 가변 인자 
7.2.3 기본값을 갖는 매개변수 
7.2.4 매개변수의 수정 
7.2.5 InOut 매개변수 
7.2.6 변수의 생존 범위와 생명 주기 
7.3 일급 객체로서의 함수 
7.3.1 일급 함수의 특성 
7.3.2 함수의 중첩 
7.4 클로저 
7.4.1 클로저 표현식 
7.4.2 클로저 표현식과 경량 문법 

CHAPTER 08 구조체와 클래스 : 객체지향 스위프트 
8.1 구조체와 클래스의 기본 개념 
8.1.1 정의 구문 
8.1.2 메소드와 프로퍼티 
8.1.3 인스턴스 
8.1.4 초기화 
8.1.5 구조체의 값 전달 방식 : 복사에 의한 전달 
8.1.6 클래스의 값 전달 방식 : 참조에 의한 전달 
8.2 프로퍼티 
8.2.1 저장 프로퍼티 
8.2.2 연산 프로퍼티 
8.2.3 프로퍼티 옵저버 
8.2.4 타입 프로퍼티 
8.3 메소드 
8.3.1 인스턴스 메소드 
8.3.2 타입 메소드 
8.4 상속 
8.4.1 서브클래싱 
8.4.2 오버라이딩 
8.5 타입 캐스팅 
8.5.1 타입 비교 연산 
8.5.2 타입 캐스팅 연산 
8.5.3 Any, AnyObject 
8.6 초기화 구문 
8.6.1 init 초기화 메소드 
8.6.2 초기화 구문의 오버라이딩 
8.7 옵셔널 체인 
8.7.1 옵셔널 타입의 문제점 
8.7.2 옵셔널 체인 

CHAPTER 09 열거형과 익스텐션 : 코드의 한계를 넓혀주는 문법 
9.1 열거형 
9.1.1 열거형의 정의 
9.1.2 멤버와 값의 분리 
9.1.3 열거형의 활용 
9.2 익스텐션 
9.2.1 익스텐션과 연산 프로퍼티 
9.2.2 익스텐션과 메소드 

CHAPTER 10 프로토콜 : 객체의 설계도 
10.1 프로토콜의 정의 
10.1.1 프로토콜 프로퍼티 
10.1.2 프로토콜 메소드 
10.1.3 프로토콜과 초기화 메소드 
10.2 타입으로서의 프로토콜 
10.3 델리게이션 
10.4 프로토콜의 활용 
10.4.1 확장 구문과 프로토콜 
10.4.2 프로토콜의 상속 
10.4.3 클래스 전용 프로토콜 
10.4.4 optional 

CHAPTER 11 오류 처리 : 스위프트는 어떻게 오류를 처리할까요? 
11.1 오류 처리 구문 
11.1.1 오류 타입 정의하기 
11.1.2 오류 던지기 
11.1.3 오류 객체 잡아내기 

CHAPTER 12 스위프트 앱 맛보기 
12.1 첫 번째 앱, Hello World! 
12.1.1 Xcode 프로젝트 생성 
12.1.2 프로젝트 설정 
12.1.3 프로젝트 구성과 스토리보드 
12.1.4 스토리보드로 화면 구성하기 
12.1.5 화면 전환 구현하기 
12.1.6 스위프트 코드 작성하기 
12.2 시작 화면 제어하기 
12.2.1 시작 화면 편집 
12.2.2 새로운 시작 화면 파일로 교체하기 

CHAPTER 13 iOS 앱의 구조와 코코아 터치 프레임워크 
13.1 앱의 기본 구조 
13.1.1 엔트리 포인트와 앱의 초기화 과정 
13.1.2 MVC 패턴 
13.1.3 앱의 상태 변화 
13.2 iOS와 코코아 터치 프레임워크 
13.2.1 iOS 
13.2.2 코코아 터치 프레임워크 
13.3 앱을 구성하는 핵심 객체들 
13.3.1 iOS 유저 인터페이스의 표현 구조 
13.3.2 뷰 컨트롤러 
13.3.3 뷰 컨트롤러의 상태 변화와 생명 주기 

CHAPTER 14 화면상의 객체를 제어하는 방법 
14.1 @IBOutlet과 @IBAction 
14.1.1 @IBOutlet - 객체의 참조 
14.1.2 @IBAction - 객체의 이벤트 제어 
14.2 인터페이스 빌더 객체와 클래스를 연결하는 방법 
14.2.1 프로젝트 생성 및 실습 준비 
14.2.2 스토리보드의 객체를 클래스와 연결하기 
14.2.3 커넥션 인스펙터 탭을 사용하여 객체 연결하기 
14.2.4 보조 에디터를 사용하여 객체 연결하기 
14.2.5 커넥션 인스펙터 탭을 사용하여 객체 연결하기 
14.2.6 문서 개요창을 활용하여 객체 연결하기 
14.3 연결 테스트 

CHAPTER 15 화면 전환 
15.1 iOS에서의 화면 전환 개념 
15.2 화면 전환 기법1 : 뷰를 이용한 화면 전환 
15.3 화면 전환 기법2 : 뷰 컨트롤러 직접 호출에 의한 화면 전환 
15.3.1 화면 전환 실습 
15.3.2 뒤로 가기 버튼 만들기 
15.4 내비게이션 컨트롤러를 이용한 화면 전환 
15.5 세그웨이를 이용한 화면 전환 
15.5.1 액션 세그웨이 
15.5.2 매뉴얼 세그 
15.5.3 Unwind - 화면 복귀 
15.5.4 커스텀 세그 
15.5.5 전처리 메소드의 활용 

CHAPTER 16 다른 뷰 컨트롤러와 데이터 주고받기 
16.1 화면 전환 과정에서의 값 전달 방식 
16.2 뷰 컨트롤러에 직접 값을 전달하기 
16.2.1 프레젠테이션 방식으로 화면 전환하면서 값을 전달하기 
16.2.2 내비게이션 컨트롤러를 통해 화면 전환하면서 값을 전달하기 
16.2.3 세그웨이를 이용하여 화면 전환하면서 값을 전달하기 
16.3 이전 화면으로 값을 전달하기 
16.3.1 직접 값을 주고 받기 
16.3.2 저장소를 사용하여 값을 주고 받기 

CHAPTER 17 사용자에게 메시지를 전달하는 방법 
17.1 메시지 알림창 - UIAlertController 
17.1.1 UIAlertController 
17.1.2 입력 필드를 가지는 메시지 창 
17.2 로컬 알림 
17.2.1 기본 실습 
17.2.2 받은 알림 처리하기 
17.2.3 UserNotifications 프레임워크를 이용한 로컬 알림 
17.2.4 미리 알림 기능 구현 

CHAPTER 18 델리게이트 패턴 
18.1 텍스트 필드 
18.1.1 텍스트 필드의 특성 
18.1.2 텍스트 필드에 델리게이트 패턴 적용하기 
18.2 이미지 피커 컨트롤러 
18.2.1 UIImagePickerController 클래스 
18.2.2 이미지 피커 컨트롤러의 델리게이트 메소드 
18.2.3 이미지 피커 컨트롤러 실습 

CHAPTER 19 테이블 뷰를 이용한 데이터 목록 구현 
19.1 프로토타입 셀 
19.1.1 프로토타입 셀을 이용한 테이블 뷰 실습 
19.2 데이터 소스 
19.2.1 데이터 소스 만들기 
19.2.2 테이블 뷰와 데이터 소스 연동 
19.3 커스텀 프로토타입 셀 
19.3.1 커스텀 프로토타입 셀 구현하기 
19.3.2 커스텀 클래스로 프로토타입 셀의 객체 제어하기 
19.3.3 프로토타입 셀에 섬네일 이미지 추가하기 
19.4 테이블 뷰의 행 높이를 결정하는 방식 
19.4.1 tableView(_:estimatedHeightForRowAt:) 

CHAPTER 20 네트워크 통신과 API 
20.1 네트워크 통신의 종류 
20.1.1 소켓 방식의 연결 지향 통신 
20.1.2 비연결 지향 통신 
20.2 오픈 API와 공공 콘텐츠 
20.2.1 오픈 API 
20.2.2 영화 정보 제공 서비스 
20.3 오픈 API를 이용한 네트워크 실습 
20.3.1 API 기본 정보 
20.3.2 네트워크 객체를 통한 데이터 요청 기능 구현 
20.3.3 전달받은 데이터를 파싱하여 화면에 출력 
20.3.4 더보기 기능 구현 

CHAPTER 21 테이블 뷰의 동작원리 
21.1 테이블 뷰를 스크롤할 때 발생하는 일들 
21.1.1 재사용 메커니즘 
21.1.2 이미지 비동기 처리하기 
21.2 일반 뷰 컨트롤러에서 테이블 뷰 사용하기 

CHAPTER 22 웹 뷰 : 앱 내장형 브라우저 
22.1 웹 뷰 
22.2 영화 정보 상세 화면 구현 
22.3 델리게이트 패턴을 이용한 웹 뷰의 로딩 처리 

CHAPTER 23 탭 바 컨트롤러 
23.1 탭 바 컨트롤러 
23.1.1 탭 바의 기본 개념 
23.1.2 탭 바에 새 탭 추가하기 
23.1.3 탭 바의 주요 기능 
23.2 탭 바를 이용한 영화관 정보 제공 
23.2.1 탭 바 컨트롤러 구성 
23.2.2 영화관 정보 API 
23.3 영화관 목록 화면 구현하기 

CHAPTER 24 맵킷 프레임워크 사용하기 
24.1 인앱 프레임워크의 종류 
24.2 맵킷 프레임워크 추가 
24.3 영화관 위치 기능 구현 

CHAPTER 25 오토 레이아웃 
25.1 다양한 화면 크기에 대응하는 레이아웃 
25.1.1 오토 리사이징(Auto-Resizing) 
25.1.2 오토 레이아웃(Auto Layout) 기능 
25.2 MyMovieChart 프로젝트에 오토 레이아웃 적용하기 
25.2.1 영화정보 화면 
25.2.2 영화 상세 화면 
25.2.3 영화관 목록 화면 
25.2.4 영화관 상세 화면 

이 책을 마무리하며 
찾아보기

관련분야 신착자료

유원석 (2021)
해람북스. 기획팀 (2021)
해람북스. 기획팀 (2021)