스위프트로 시작하는 아이폰 앱 개발 교과서: 초보 입문용
도서명:스위프트로 시작하는 아이폰 앱 개발 교과서: 초보 입문용
저자/출판사:모리,요시나오/위키북스
쪽수:480쪽
출판일:2016-09-29
ISBN:9791158390440
목차
▣ 01장: 애플리케이션 개발
1-1 개발에 필요한 것
___아이폰 애플리케이션을 만들어봐요!
___개발에 필요한 것
1-2 Xcode 설치
___Xcode 설치
1-3 애플리케이션 개발에 필요한 작업
___애플리케이션 개발에 필요한 작업
1-4 Xcode 테스트
___[튜토리얼] Hello 애플리케이션
▣ 02장: 기본적인 Xcode 사용 방법
2-1 프로젝트 생성: New Project
___[튜토리얼] 버튼
___프로젝트 생성
___템플릿 선택
___프로젝트 기본 정보 입력
2-2 Xcode 화면
___기본 화면 설명
___내비게이터 영역
___툴바
___에디터 영역
___유틸리티 영역
2-3 화면 디자인: 인터페이스 빌더
___인터페이스 빌더를 사용한 화면 디자인
___라이브러리로 부품 배치
___인스펙터로 부품 설정
___오토 레이아웃[자동 설정]
2-4 부품과 프로그램 연결: 어시스턴트 에디터
___어시스턴트 에디터로 부품과 프로그램 연결
___IBOutlet 연결: 부품에 이름 붙이기
___IBAction 연결: 부품과 메서드 연결
2-5 프로그램 작성: 소스 에디터
___소스 에디터에서 프로그램 작성
___프로그램을 입력할 때의 보조 기능
2-6 시뮬레이터에서 테스트
___시뮬레이터에서 테스트
___아이폰의 종류를 변경해서 실행하는 방법
___시뮬레이터의 기본 조작
▣ 03장: 플레이그라운드를 사용한 스위프트 프로그래밍
3-1 스위프트 기본
___스위프트란?
___플레이그라운드란
___[튜토리얼] 플레이그라운드 사용하기!
3-2 프로그램이란
___프로그램이란
___프로그램의 기본
3-3 데이터 다루기
___변수와 상수
___상수와 변수의 차이
___상수와 변수의 오류
___이름 붙이는 방법 - 변수 이름, 상수 이름
3-4 자료형
___자료형이란?
___자료형의 종류
___자료형 변환
3-5 프로그램 제어
___제어문
___if 조건문[분기 처리]
___switch 조건문[분기 처리]
___while 반복문[반복 처리]
___for 반복문[반복 처리]
3-6 여러 개의 데이터 다루기
___여러 개의 데이터 다루기
___배열(Array) 만들기
___배열 확인
___배열의 조작
___딕셔너리(Dictionary)
___딕셔너리 만들기
___딕셔너리의 확인
___딕셔너리의 조작
___튜플(Tuple)
___튜플 사용 방법
3-7 함수(메서드)
___함수란?
___함수를 만드는 방법과 호출하는 방법
___매개변수
___반환 값
3-8 Optional 자료형
___변수에 nil을 넣으면 오류
___Optional 자료형은 왜 필요할까?
___Optional 자료형의 변수 만들기: 랩
___Optional 자료형의 변수에서 값을 꺼내는 방법
3-9 클래스
___객체 지향이란?
___클래스는 설계도
___클래스 만드는 방법
___클래스의 사용 방법
___클래스 상속과 오버라이드
▣ 04장: 기본적인 부품으로 애플리케이션 만들기: UIKit
4-1 UIKit이란?
___UIKit은 화면을 구성하는 부품
___다양한 종류의 UIKIT
4-2 UILabel: 간단한 문자를 화면에 출력할 때
___UILabel이란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
4-3 UIButton: 사용자가 누르면 무언가 하고 싶을 때
___UIButton이란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
___[사용 방법] Action 설정 방법
4-4 UISwitch: 활성화 또는 비활성화를 선택할 때
___UISwitch란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
___[사용 방법] Action 설정 방법
4-5 UISlider: 슬라이드해서 값을 입력할 때
___UISlider란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
___[사용 방법] Action 설정 방법
4-6 UITextField: 글자 한 줄을 입력받을 때
___UITextField란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
___[사용 방법] Action 설정 방법
4-7 UITextView: 긴 글자를 출력하거나 입력받을 때
___UITextView란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
___[사용 방법] Action 설정 방법
4-8 UIImageView: 이미지를 출력하고 싶을 때
___UIImageView란?
___[사용 방법] 인터페이스 빌더로 설정하는 방법
___[사용 방법] 프로그램으로 설정하는 방법
___[사용 방법] Action 설정 방법
4-9 UIKit으로 애플리케이션 만들기[화면 디자인]
___UIKit으로 애플리케이션 만들어보기
___[튜토리얼] 가위바위보 애플리케이션
___[1] 프로젝트 만들기
___[2] 화면 디자인
___오토 레이아웃[수동 설정]
___오토 레이아웃 설정
___3개의 가위바위보 버튼을 같은 간격으로 나열
4-10 UIKit으로 애플리케이션 만들기![프로그램 제작]
___부품을 연결하고 프로그래밍하기
▣ 05장: 웹과 연결된 애플리케이션 만들기
5-1 웹과 연결된 애플리케이션
___웹과 연결된 애플리케이션
5-2 웹 사이트 출력
___[사용 방법] 웹 사이트를 애플리케이션의 부품으로 넣는 방법: 웹뷰
___[사용 방법] 애플리케이션에서 사파리를 띄어서 사용하는 방법1: SFSafariViewController
___[사용 방법] 애플리케이션에서 사파리를 띄어서 사용하는 방법2: SafariViewController
5-3 웹에서 이미지 데이터 내려받기
___이미지뷰란?
___[사용 방법] 웹에서 이미지를 내려받아 출력하는 방법
5-4 텍스트 데이터 내려받기
___웹에서 텍스트 내려받기
___[사용 방법] 웹에서 텍스트를 내려받는 방법1: 메서드를 만들지 않는 방법
___[사용 방법] 웹에서 텍스트를 내려받는 방법2: 메서드를 만드는 방법
5-5 JSON 데이터 파싱
___JSON 데이터란?
___JSON의 형식
___[사용 방법] JSON 데이터를 파싱(해석)하는 방법: NSJSONSerialization
5-6 SNS 글 작성
___SNS에 글쓰기
___[사용 방법] 글쓰기 대화 상자 띄우기
___[사용 방법] 공유 액션 시트를 사용해서 글쓰기 대화상자 띄우기
▣ 06장: 화면이 여러 개 있는 애플리케이션 만들기: UIViewController
6-1 화면이 여러 개 있는 애플리케이션이란?
___화면이 여러 개 있는 애플리케이션
___[1] 화면 변경 방법 결정
___[2] 화면마다 뷰 컨트롤러 만들기
___[3] 데이터 연동 방법
___싱글 뷰 애플리케이션에 화면 추가
6-2 싱글 뷰 애플리케이션으로 화면이 여러 개 있는 애플리케이션 만들기
___(화면디자인)
___[튜토리얼] 색상을 전달하는 애플리케이션 만들기
___프로젝트 만들기
___화면 디자인
6-3 싱글 뷰 애플리케이션으로 화면이 여러 개 있는 애플리케이션 만들기
___(프로그램 제작)
___[튜토리얼] 색상을 전달하는 애플리케이션 만들기(계속)
___부품을 연결해서 프로그래밍
6-4 탭 기반 애플리케이션으로 화면이 여러 개 있는 애플리케이션 만들기
___(화면 디자인)
___탭 기반 애플리케이션은 탭으로 여러 개의 화면을 전환하는 애플리케이션
___[튜토리얼] 단위 환산 애플리케이션 만들기
___프로젝트 만들기
___화면 디자인
6-5 탭 기반 애플리케이션으로 화면이 여러 개 있는 애플리케이션 만들기
___(프로그램 제작)
___[튜토리얼] 단위 환산 애플리케이션 만들기(계속)
___부품을 연결해서 프로그래밍
▣ 07장: 기본적인 부품으로 애플리케이션 만들기: UIKit
7-1 UITableView: 리스트를 출력할 때
___UITableView란?
___테이블 뷰의 구조
___[사용 방법] 인터페이스 빌더에서 설정하는 방법
___[사용 방법] 테이블 뷰 사용 방법
7-2 UITableViewCell: 셀을 변경하고 싶을 때
___UITableViewCell이란?
___기본적으로 제공되는 셀을 사용하는 방법
___셀 속성
7-3 UITableViewCell: 셀의 레이아웃을 자유롭게 구성
___셀의 레이아웃을 자유롭게 구성하는 방법
___부품에 태그를 붙이고, 태그로 접근하는 방법
___[사용 방법] 태그로 접근하는 셀 만들기
___[사용 방법] 사용자 정의 셀 클래스를 만들고 접근하는 방법
7-4 테이블로 애플리케이션 만들기
___UITableView로 애플리케이션 만들기
___[튜토리얼] 폰트를 출력하는 애플리케이션 만들기
___프로젝트 만들기
___화면 디자인
___프로토콜 설정
___프로그래밍
7-5 Master-Detail 애플리케이션으로 애플리케이션 만들기(템플릿)
___Master-Detail 애플리케이션은 테이블 뷰를 사용한 애플리케이션
___[튜토리얼] 사진 목록 애플리케이션 만들기
___프로젝트 만들기
___리스트 편집 기능 제거
___테스트 데이터 출력
7-6 Master-Detail 애플리케이션으로 애플리케이션 만들기(프로그램 제작)
___[튜토리얼] 사진 목록 애플리케이션 만들기(계속)
___사진 목록 애플리케이션 수정
▣ 08장: 게임 애플리케이션 만들기: SpriteKit
8-1 SpriteKit이란?
___SpriteKit은 2D 게임에 사용하는 프레임워크
___SpriteKit의 3단계 구조
___노드(SKNode)는 움직임을 추가해서 움직이게 만듦
8-2 SpriteKit 템플릿 실행해보기
___SpriteKit 템플릿 실행
___[튜토리얼] SpriteKit 템플릿 사용해보기
___프로젝트 만들기
___불필요한 부분 제거
8-3 객체 출력: 레이블, 스프라이트, 셰이프
___레이블 노드 만들기: SKLabelNode
___문자를 기반으로 레이블 노드 만들기: SKLabelNode(text: String?)
___스프라이트 노드 만들기: SKSpriteNode
___셰이프 노드 만들기: SKShapeNode
___씬에 출력: self.addChild(SKNode)
___노드에 노드 추가: addChild(SKNode)
8-4 파티클
___파티클이란?
___[튜토리얼] 파티클 만들기: SpriteKit Particle File
___[튜토리얼] 파티클 사용하기: SKEmitterNode()
8-5 스프라이트에 움직임 적용
___SKAction으로 움직임을 만들고 runAction 메서드로 노드에 움직임을 적용
___이동 움직임
___회전 움직임
___확대 축소 움직임
8-6 움직임 조합
___여러 개의 움직임 적용
___움직임 반복: SKAction.repeat(SKAction, count: Int)
___계속 반복: SKAction.repeatForever(SKAction)
___동시에 움직이기: SKAction.group([SKAction])
___차례대로 움직이기: SKAction.sequence([SKAction])
___특정 시간 동****대기: SKAction.wait(forDuration: TimeInterval)
___랜덤한 시간 동****대기: SKActi on.wait(f orDurati on: TimeInterval, withRange: TimeInterval)
8-7 사용자 터치 확인
___사용자 터치를 확인하는 메서드: touchesBegan
___터치된 노드를 확인하는 방법
8-8 2D 게임 만들기
___SpriteKit으로 2D 게임 애플리케이션 만들기
___[튜토리얼] 다른 글자 찾기 게임
___빈 SpriteKit 애플리케이션 만들기
___게임 애플리케이션 만들기
8-9 2D 물리 시뮬레이션
___2D 물리 시뮬레이션이란?
___[사용 방법] 물리 시뮬레이션 사용 방법
___[사용 방법] 물체의 다양한 설명
8-10 물리 시뮬레이션 게임 만들기
___물리 시뮬레이션을 사용해 게임 만들기
___[튜토리얼] 틀린 글자 찾기 게임2
▣ 09장: 애플리케이션 마무리
9-1 아이콘
___아이콘이란?
___필요한 아이콘의 종류
___아이콘 설정 방법
9-2 실행 화면
___실행 화면이란?
___LaunchScreen.storyboard 파일 만들기
9-3 다양한 언어 대응
___다양한 언어 대응
___[사용 방법] 스토리보드에서 사용하는 문자열을 지역화하는 방법
___[사용 방법] 프로그램에서 사용하는 문자열
___[사용 방법] 애플리케이션 이름을 지역화하는 방법
9-4 실제 장치에서 테스트
___실제 장치에서 테스트하는 방법
부록
TIPS
오픈 API 활용