실전강좌! 아이폰 앱 프로그래밍

스위프트로 만드는

이제 스위프트로 아이폰 앱 개발에 도전하세요!

이 책은 아이폰 개발에 도전해 봤지만 어려움을 느꼈거나 새롭게 아이폰 개발에 첫발을 내딛고자 하는 독자에게 새로운 개발 언어인 스위프트(Swift)를 기본 개념부터 실무 개발까지 하나씩 안내해 줍니다. 한번 만들고 끝내는 피상적인 따라하기 식이 아니라 기대에 부응할 만한 확실한 실력을 습득할 수 있도록 꾸준한 학습을 지원합니다. 내용은 다음과 같이 세 부분으로 나눠져 있습니다.

▣ Part 1 개요

iOS 앱 개발 준비 및 개발 도구 Xcode 사용에 대한 개요를 설명합니다. 버튼을 누르면 화면의 색이 변하는 간단한 앱을 즉시 만들어 봅니다.

▣ Part 2 기초 지식

2~10장에서는 스위프트 문법을 설명합니다. 프로그래밍 경험이 전혀 없는 독자를 위해 서두르지 않고 꾸준히 진행되도록 짧은 코드 결과를 보여 주며, 직관적으로 이해할 수 있는 예제들로 구성하였습니다. 나아가 중급자를 목표로 하는 독자을 위해 한층 깊이 있는 핵심적인 내용도 담고 있습니다.

▣ Part 3 실전 입문

11~19장은 실습입니다. Xcode에서 제공하는 스토리보드를 활용하거나 코드를 효율적으로 이용해 iOS 앱을 만들어 봅니다. iOS 앱 기본 UI 부품을 하나씩 불러들여 간단한 것에서부터 복잡한 것까지 단계적으로 진행할 수 있도록 설명했습니다.

이 책을 통해 기초 문법을 다지고 다양한 예제를 실전에서처럼 만들어 봄으로써, 스위프트를 체계적으로 훨씬 빨리 익힐 수 있을 것입니다. 오브젝티브 C로는 그 언어의 난해함 때문에 여러 번 포기했었다면 이제 쉽고 편리한 개발 언어인 스위프트와 함께 원하는 아이폰 앱 개발에 도전해 보세요.

 

도서 상세 이미지

오오시게 요시유키

히타치 정보 시스템, 커뮤니케이션 시스템 연구소를 거쳐 독립. 컴퓨터 전문 잡지에 기고를 시작으로 CD-ROM 게임 개발, 웹 콘텐츠 제작, 교재 개발, 세미나 강사를 함. HyperCard, 파일 메이커, Excel, Director, ActionScript, Objective-C, Swift, PHP등에 관한 저술 다수. 취미는 트레일 러닝, 서핑 등. http://oshige.com/

[최근 저술]

  • 상세! PHP 7 + MySQL 입문 노트/소테크 사
  • 상세! Swift2 iPhone 앱 개발 입문 노트/소테크 사
  • 상세! Swift iPhone 앱 개발 입문 노트/소테크 사
  • 상세! Objective-C iPhone 앱 개발 입문 노트/소테크 사
  • 상세! ActionScript 3.0 입문 노트/소테크 사
  • Flash ActionScript 고급 예제집/소테크 사
  • Lingo 고급 매뉴얼, Director 고급 매뉴얼/오무사
  • NeXT 퍼스트 북/소프트뱅크
  • HyperTalk 핸드북/BNN
  • 파일 메이커 Pro 입문/BNN
  • 그 외 다수(합계 72권)

김은철(ceo@k2apps.kr)

㈜아이티에스 대표이며, AWS에 기반한 IoT 실시간 서비스를 개발했다. 일본 법인 ㈜아이티에스 대표 및 엘피에이캠퍼스 전임강사(C, C++, MFC, Network, Database)였고, 한화S&C㈜에서 근무했다. 저서로는 <예제가 가득한 C 언어 길라잡이>, <초보자를 위한 C 언어 300제>, 역서로는 <유니티5 교과서>, <예제로 배우는 핵심 패턴 안드로이드 프로그래밍>, <아이폰 프로그래밍 UIKit 핵심 바이블> 외 다수가 있다. 최근에는 앱, 인공지능, VR 사업을 하고 있다.

유세라(serasoul@gmail.com)

일본 전문 번역가로 활동하고 있으며, 현재 ㈜컴온히어 기업 대표로 앱, 인공지능을 하고 있다. 한국에서 영상처리, 게임회사를 거쳐 일본에서 IT 엔지니어로 활동했다. 역서로는 <유니티5 교과서>, <예제로 배우는 핵심 패턴 안드로이드 프로그래밍>, <아이폰 프로그래밍 UIKit 핵심 바이블> 외 다수가 있다.

  • ▣ Chapter 1: Xcode 시작하기
    • Section 1-1 iOS 앱 개발 준비
    • Section 1-2 Xcode 사용법
    • Section 1-3 iOS 시뮬레이터에서 테스트
    • Section 1-4 HelloWorld
    • Section 1-5 플레이그라운드에서 테스트
    •  
  • ▣ Chapter 2: 기본 문법
    • Section 2-1 문장과 디버그 함수
    • Section 2-2 상수와 변수
    • Section 2-3 튜플
    • Section 2-4 연산자
    • Section 2-5 조건으로 처리를 분기하는 if 문
    • Section 2-6 값으로 처리를 분기하는 switch 문
    • Section 2-7 처리를 반복하는 for-in 문
    • Section 2-8 조건을 만족하는 동안 반복하는 while 문
    • Section 2-9 반복 스킵과 중단
    •  
  • ▣ Chapter 3: 함수, 클로저
    • Section 3-1 함수 정의하기
    • Section 3-2 매개변수가 있는 함수
    • Section 3-3 외부 매개변수명 사용하기
    • Section 3-4 고급 함수 이용하기
    • Section 3-5 클로저
    •  
  • ▣ Chapter 4: 문자열 String
    • Section 4-1 문자열을 만든다
    • Section 4-2 문자열에서 문자를 꺼낸다
    • Section 4-3 문자열을 비교하고 검색한다
    •  
  • ▣ Chapter 5: 배열 Array
    • Section 5-1 배열을 만든다
    • Section 5-2 배열에서 값을 꺼낸다
    • Section 5-3 배열에 값을 추가하고 삭제한다
    •  
  • ▣ Chapter 6: 딕셔너리 Dictionary
    • Section 6-1 딕셔너리를 만든다
    • Section 6-2 딕셔너리에서 값을 꺼낸다
    • Section 6-3 딕셔너리에 요소를 추가하고 삭제한다
    •  
  • ▣ Chapter 7: 집합 Set
    • Section 7-1 세트를 만든다
    • Section 7-2 세트의 집합 연산을 한다
    •  
  • ▣ Chapter 8: 옵셔널
    • Section 8-1 옵셔널
    • Section 8-1 옵셔널 밸류가 nil인 경우에 대응한다
    •  
  • ▣ Chapter 9: 클래스
    • Section 9-1 클래스 정의
    • Section 9-2 이니셜라이저
    • Section 9-3 Computed 프로퍼티와 프로퍼티 옵져버
    • Section 9-4 클래스 멤버
    • Section 9-5 접근 권한
    • Section 9-6 클래스 확장
    •  
  • ▣ Chapter 10: 열거형과 구조체
    • Section 10-1 열거형 enum
    • Section 10-2 열거형에 프로퍼티와 메서드를 구현한다
    • Section 10-3 구조체 struct
    • Section 10-4 이니셜라이저나 메서드가 있는 구조체
    •  
  • ▣ Chapter 11: 오토 레이아웃(Auto Layout)
    • Section 11-1 오토 레이아웃을 이용한다
    • Section 11-2 중심으로부터 거리를 지정해 위치를 정한다
    • Section 11-3 화면의 가장자리로부터 거리를 고정한다
    • Section 11-4 사진을 배치한다
    • Section 11-5 Constraints를 수정한다
    •  
  • ▣ Chapter 12: 어시스턴트 에디터와 UI 부품 사용법
    • Section 12-1 어시스턴트 에디터를 사용한다
    • Section 12-2 라벨 - UILabel 클래스
    • Section 12-3 버튼 - UIButton 클래스
    • Section 12-4 스테퍼 - UIStepper 클래스
    • Section 12-5 스위치 - UISwitch 클래스
    • Section 12-6 세그먼티드 컨트롤 - UISegmentedControl 클래스
    • Section 12-7 슬라이더 - UISlider 클래스
    • Section 12-8 텍스트 필드 - UITextField 클래스
    • Section 12-9 피커 뷰 - UIPickerView 클래스
    • Section 12-10 UI 부품의 클래스 상속
    •  
  • ▣ Chapter 13: 뷰와 이미지
    • Section 13-1 뷰 작성과 이미지
    • Section 13-2 이미지 표시
    • Section 13-3 뷰의 좌표와 영역
    • Section 13-4 스택 뷰 - UIStackView 클래스
    • Section 13-5 테이블 뷰 - UITableView 클래스
    • Section 13-6 스크롤 뷰 - UIScrollView 클래스
    •  
  • ▣ Chapter 14: 씬 작성과 이동
    • Section 14-1 씬과 뷰 컨트롤러
    • Section 14-2 세그웨이로 씬을 이동한다
    • Section 14-3 코드를 사용해 씬을 이동한다
    • Section 14-4 내비게이션 컨트롤러로 이동한다
    • Section 14-5 내비게이션 컨트롤러와 테이블 뷰
    • Section 14-6 탭 바로 씬을 전환한다
    • Section 14-7 알림을 표시한다
    • Section 14-8 액션 시트를 표시한다
    •  
  • ▣ Chapter 15: 애니메이션과 영상효과
    • Section 15-1 타이머를 사용한 애니메이션
    • Section 15-2 이즈 인 아웃 애니메이션
    • Section 15-3 여러 개의 애니메이션을 합성한다
    • Section 15-4 애니메이션을 연결한다
    • Section 15-5 이미지 뷰의 프레임 애니메이션
    •  
  • ▣ Chapter 16: 핑거 액션
    • Section 16-1 제스처 리커그나이저
    • Section 16-2 더블 탭을 감지한다
    • Section 16-3 뷰를 드래그한다
    • Section 16-4 두 손가락을 비틀어 뷰를 돌린다
    •  
  • ▣ Chapter 17: 도형 그리기
    • Section 17-1 도형 이미지를 그린다
    • Section 17-2 원호와 부채꼴을 그린다
    • Section 17-3 직선을 긋는다
    • Section 17-4 베지에 곡선을 긋는다
    • Section 17-5 도형 겹쳐 그리기
    •  
  • ▣ Chapter 18: 데이터 저장과 읽기
    • Section 18-1 유저 디폴트를 이용한다
    • Section 18-2 텍스트 파일 저장과 읽기
    • Section 18-3 텍스트 뷰를 키보드 크기에 맞춘다
    •  
  • ▣ Chapter 19: 디바이스 기능
    • Section 19-1 자동 회전과 화면 회전 제한
    • Section 19-2 디바이스 회전과 표면/후면 이벤트 통지
    • Section 19-3 카메라로 사진을 촬영한다
    • Section 19-4 카메라 개인 정보 보호 인증 확인
    • Section 19-5 촬영한 사진을 공유한다
    • Section 19-6 위치 정보와 나침반
    • Section 19-7 지도를 표시한다
    • Section 19-8 지도에서 현재 장소를 트래킹한다
    • Section 19-9 모션 센서 측정값을 조사한다

예제코드 관련 GitHub 페이지

  • 47쪽, 두 번째 줄

    변수 price의 값은 ==> 변수 unitPrice의 값은

  • 47쪽, 두 번째 줄

    이런 경우 price는 ==> 이런 경우 unitPrice

  • 47쪽, 다섯 번째 줄

    변수 price는 바뀌지 않는다. ==> 변수 unitPrice는 바뀌지 않는다.