책 소개
프로그래밍을 전혀 몰라도 따라 하면 되는
아이폰 앱 제작 테크닉!
아이폰을 만든 스티브 잡스는 ‘모든 국민이 코딩을 배워야 한다’고 말했습니다. 이미 미국, 영국, 일본 등지에서는 코딩이 필수 교과목으로 널리 교육되고 있습니다. 코딩을 배우면 문제 해결 능력 및 의사소통 능력을 익혀 논리적 사고력 및 창의력을 키울 수 있습니다. 또한 코딩을 통한 사고력 및 창의력 향상을 통해 삶의 질도 향상시킬 수 있어 여러모로 매우 유용한 기술입니다. 이에 따라 코딩 관련 책이 쏟아져 나오고 있지만 대개가 안드로이드 앱 환경을 기반으로 한 코딩 책이라 아이폰 앱 코딩 입문서는 찾기 힘듭니다. 『스위프트로 배우는 맨 처음 아이폰 앱 코딩』은 아이들이 쉽게 따라 할 수 있는 첫 번째 아이폰 앱 코딩 입문서입니다.
마니아층이 두터운 아이폰은 특유의 독창성과 시대를 앞서 나가는 세련된 디자인, 안드로이드 앱에는 없는 편리하고 다양한 기능의 앱, 보안이 취약한 안드로이드 폰보다 안전하다는 점에서 전 세계 스마트폰 사용자들의 사랑을 받고 있습니다. 하지만 아이폰 앱 환경을 생소하게 생각해 아이폰 앱 코딩을 배울 엄두 자체를 못 내는 사람들이 대부분입니다. 사실 아이폰 앱 개발은 생각보다 어렵지 않습니다. 아이폰 앱을 만드는 흐름 자체는 안드로이드 앱과 거의 같아 원리만 알면 쉽게 아이폰 앱을 만들 수 있습니다.
이 책에서는 모든 애플 기기에서 실행되는 모바일 응용 프로그램에 사용되는 언어인 ‘스위프트’에서 프로그램을 작성하는 방법을 소개하고 있습니다. 애플에서 제공하는 스위프트는 초보자도 쉽게 사용할 수 있는 강력한 프로그래밍 언어로, 이 언어를 이용하여 누구나 아이폰이나 아이패드용 앱을 멋지게 만들 수 있습니다. 무엇보다 엑스코드(Xcode, 애플이 개발한 OS X의 개발 툴 모음으로 코드 에디터)에서 제공하는 플레이그라운드에서 스위프트를 작성하면 곧바로 코드 결과를 확인할 수 있습니다. 코드를 작성할 때 그 전과 후의 상황까지 보여 주며 실수하지 않도록 이끌어 주는 게 이 책의 가장 큰 장점입니다. 만약 프로그래밍 경험이 전혀 없다면, 스위프트는 첫 번째 프로그래밍 언어로 사용하기에 적합할 것입니다.
초보자도 쉽게 사용 가능한 강력한 프로그래밍 언어!
스위프트로 내 머릿속 앱을 현실화하자!
『스위프트로 배우는 맨 처음 아이폰 앱 코딩』은 스위프트의 기본 문법을 익히고 이를 활용해 앱을 만드는 전반적인 흐름을 파악함으로써 코딩에 대한 탄탄한 기초를 쌓을 수 있도록 도와줍니다. 아이폰 앱 코딩에 대해 쉽게 이해할 수 있도록 아이폰 앱 개발 도구인 엑스코드를 설치하는 과정부터 차근차근 시작하여, 프로그래밍의 ‘프’자도 모르는 사람도 중도 포기 없이 완성할 수 있도록 쉬운 예제를 통해 하나하나 친절히 설명해 줍니다. 코드를 작성하고 작업 결과를 곧바로 확인할 수 있는 대화형 환경인 엑스코드 플레이그라운드에서 조건문을 사용하여 다양한 결정을 내리는 방법, 배열에 데이터를 저장하는 방법, 코드를 구성하는 함수를 생성하는 방법 등 기본적인 사항을 익히고 나서, 이를 활용해 앱을 실제로 만들어 봄으로써 코딩에 대한 탄탄한 기초를 쌓을 수 있도록 도와줍니다.
이 책을 다 읽을 때쯤이면 아이폰이나 아이패드, 혹은 아이팟 터치에서 실행할 수 있는 앱을 개발할 수 있을 것입니다. 이제 쉽고 편리한 개발 언어인 스위프트와 함께 아이폰 앱 개발에 도전해 보세요!
이 책은 무슨 내용을 다루고 있나요?
『스위프트로 배우는 맨 처음 아이폰 앱 코딩』은 초등학생, 청소년뿐만 아니라 프로그래밍 경험이 없는 어른들에게도 유용한 책입니다. 코딩이나 프로그래밍을 몰라도, 처음 앱을 만들어 보는 독자도 쉽게 따라 하면서 배울 수 있도록 다양한 그림 및 친절한 설명과 함께 아이폰이나 아이패드에서 앱을 만들 수 있는 방법을 알려줍니다. 책을 읽으면서 예제를 테스트하고 자신만의 코드를 작성해 보는 것도 좋은 방법입니다.
1장 엑스코드 및 스위프트에서는 애플에서 개발되어 아이폰 및 모든 아이폰 전용 앱을 동작시키는 모바일 운영 체제(엑스코드 및 스위프트) 및 앱을 개발하는 방법에 대해 소개합니다. 챕터 1에서는 컴퓨터에서 엑스코드를 설치하는 방법과 아이폰이나 아이패드, 혹은 아이팟 터치에서 실행할 수 있는 “Hello, world!” 앱을 만드는 간단한 예제를 소개합니다. 챕터 2에서는 엑스코드 플레이그라운드 환경에서 프로그램을 작성하는 방법에 대해 소개하고 다양한 데이터 타입으로 변수 및 상수를 생성하는 방법을 알려줍니다. 챕터 3 및 4에서는 컴퓨터 프로그램의 흐름을 제어하는 방법을 소개합니다. 챕터 3에서는 if 문과 조건문을, 그리고 챕터 4에서는 for-in 및 while 루프를 다루고 있습니다. 챕터 5에서는 값이 있거나 없을 수 있는 상수 또는 변수인 옵셔널에 대해 소개합니다. 챕터 6에서는 배열 및 딕셔너리 등 두 가지 스위프트 컬렉션 타입을 사용하는 방법을 알려줍니다. 챕터 7에서는 특정 작업을 처리하기 위해 반복적으로 호출될 수 있는 코드 블록인 함수를 작성하는 방법에 대해 소개합니다. 챕터 8에서는 배낭이나 차, 고양이, 혹은 그 밖의 상상 가능한 실제 물건을 나타내는 객체를 생성하기 위해 사용자 정의 클래스를 만드는 방법을 배우게 될 것입니다.
2장 버스데이 트래커에서는 챕터 9에서 챕터 13까지 총 다섯 챕터를 통해 휴대 전화에 친구 생일을 저장하고 생일을 축하할 수 있도록 알림을 전송하는 앱을 만들게 될 것입니다.
3장 스쿨하우스 스케이트보더에서는 챕터 14에서 챕터 18까지 총 다섯 챕터를 통해 플레이어가 보도에 있는 구멍을 뛰어넘고 점수를 높이기 위해 보석을 획득하는 스케이트보더를 제어하는 게임을 개발하게 될 것입니다.
마지막으로, 리소스에서는 오류를 해결하는 팁, 유용한 문서를 찾을 수 있는 곳, 편리한 키보드 단축키, 그리고 엑스코드 버전에 대한 정보 등을 포함해서 여러분이 자신만의 앱을 제작할 때 도움이 될 만한 정보를 제공합니다.
예제를 직접 만들다 보면, 프로그래밍 언어가 저절로 이해된다!
쉽고 친절한 아이폰 앱 제작 입문서
『스위프트로 배우는 맨 처음 아이폰 앱 코딩』을 통해 프로그래밍이란 모험에 뛰어들면 여러분은 다음과 같은 방법을 배우게 됩니다.
ㆍ버튼 클릭만으로 모든 친구를 파티에 초대하는 앱같이 시간을 절약할 수 있는 프로그램을 제작하는 방법
ㆍ컴퓨터가 올바른 답을 얻을 때까지 반복 시도하는 루프를 사용하여 숫자 알아맞히는 게임을 프로그램하는 방법
ㆍSpriteKit에서 제공하는 그래픽 및 사운드 효과를 이용하여 실제로 즐길 수 있는 게임을 제작하는 방법
ㆍ게임 속도를 올리고 최고 점수 시스템을 추가해 플레이어의 도전 의식을 자극하는 방법
이 책을 다 읽고 나면, 여러분은 어느새 코딩 전문가가 되어 있을 거예요. 컴퓨터 프로그래밍이라는 흥미로운 세계로 여러분을 초대합니다!
도움을 받을 수 있는 웹사이트
※ 이 책의 예제 소스는 노스타치 출판사 홈페이지 또는 동아엠앤비 출판사 블로그에서 다운로드할 수 있습니다.
스위프트는 진화하고 있는 언어이므로 자주 업데이트됩니다. 이 책의 웹사이트 노스타치 홈페이지를 통해 이런 업데이트 및 업데이트로 인해 이 책에 미치는 영향을 파악할 수 있습니다.
- 노스타치 출판사 홈페이지 https://www.nostarch.com/iphoneappsforkids
- 동아엠앤비 출판사 블로그 http://blog.naver.com/damnb0401
이 책에서는
-스위프트 버전 3.x 및 엑스코드 버전 8.x를 사용합니다.
-OS X 10.11 버전 이상이 필요합니다.
자신의 자녀가 스위프트를 배우기 위해 사용할 수 있는 좋은 책을 찾고 있다면, 『스위프트로 배우는 맨 처음 아이폰 앱 코딩』을 읽어 볼 것을 권한다!
- 롭 웰치, [투데이 인 아이오에스(Today in iOS)]
『스위프트로 배우는 맨 처음 아이폰 앱 코딩』은 10세 이상의 독자를 대상으로 한 도서이지만 책 구성이 굉장히 잘되어 있어 어른들이 보기에도 좋은 책이다. 자신만의 아이폰 앱을 만드는 방법을 배우고 싶어 하는 성인들에게 이 책을 독학용 가이드로서 적극 권장한다.
- [미드웨스트 북 리뷰(Midwest Book Review)]
코딩을 재미있게 배울 수 있는 방법으로 『스위프트로 배우는 맨 처음 아이폰 앱 코딩』을 적극 추천한다!
- [마이맥(MyMac)]
★★★★★ 이 책은 책 머리말에서 말한 것보다 훨씬 더 광범위한 연령대의 독자들에게 유용할 거라고 생각합니다. 저는 61세지만 이 책을 통해 스위프트 및 코딩의 기본 원칙들을 이해하는 데 굉장히 많은 도움을 받았어요. 기본적인 내용에 충실한 교재로, 내용을 쉽게 이해할 수 있도록 구성되어 있어서 기본 코드 메커니즘을 새롭게 이해하는 데 많은 도움을 받을 수 있었습니다. 이 책은 오늘날의 어린이들을 위한 훌륭한 참고 도서일 뿐만 아니라 이 과정을 이해하거나 코드화하려는 나이 든 세대에게도 유용한 도서입니다.
- 퀵빔(Quickbeam, 리뷰어 상위 1000 및 아마존 바인 보이스 회원)
★★★★★ 앱을 만드는 방법에 대해 궁금해하던 차에 마침 이 책을 알게 되었어요. 이 책은 굉장히 쉽고 재미있게 잘 쓰여 있으며 구성도 매우 간단해서 초보자를 위한 책으로 이보다 더 좋은 책은 없을 거라고 생각해요.
- LOL(아마존 바인 보이스 회원)
★★★★★ 이 책은 이해하기 쉬운 예제 및 삽화가 들어 있는 훌륭한 코딩 도서일 뿐만 아니라 어린이 및 청소년들이 이해할 수 있는 유머가 담겨 있어요. 『스위프트로 배우는 맨 처음 아이폰 앱 코딩』은 어린이들뿐만 아니라 코딩이라는 매력적인 세상에 대해 알고 싶어 하는 어른들에게도 매우 유용한 책이에요. 저도 이 책을 적극 추천합니다!
- 호세 데 몰리네도(Jose De Mollinedo)
★★★★★ 저자가 프로그래밍을 자세히 설명하면서 애플 스위프트에 대하여 독자에게 자연스럽게 소개하는 처음 몇 챕터에서 이미 깊은 인상을 받았어요. 굉장히 잘 만들어진 책입니다!
- Jedi.nt2050
작가 소개
저 : 글로리아 윈퀴스트
Gloria Winquist
오랫동안 애플의 열렬한 팬이었으며, Apple III 가정용 컴퓨터에서 조크(Zork, 텍스트를 입력하여 진행하는 어드벤처 게임) 게임을 재미있게 했던 추억을 간직하고 있다. 2011년 iOS 개발에 매료된 후 전문 프로그래머로서 일해 왔으며, 현재 루미라DX(LumiraDx)에서 iOS 개발자로 근무하고 있다.
저 : 매트 맥카시
Matt McCarthy
10살 때 처음으로 Apple II+에서 베이식 프로그램을 작성하는 방법을 배웠다. 이후 다양한 컴퓨터 언어를 사용하여 전문적으로 프로그램을 작성했다. 그는 2명으로 구성된 팀인 토마토 인터액티브 LLC의 일원으로 iOS 앱을 비롯해 20가지 이상의 앱을 출시했으며, 2012년부터 iOS 엔지니어로서 근무하며 의사와 환자들을 위한 건강관리 앱을 개발했다. 현재 루미라Dx에서 소프트웨어 엔지니어로 근무하고 있다.
역 : 김민섭
동국대학교 컴퓨터 공학과를 졸업하였으며, 벤처기업에서 번역가와 엔지니어로 근무했다. 현재 번역 에이전시 엔터스코리아에서 전문 번역가로 활동하고 있다. 주요 역서로는 『HTML5 캔버스 완벽 가이드 : 그래픽 애니메이션 게임 개발을 위한 캔버스』 『아이패드 퍼펙트 매뉴얼 : 친절하고 꼼꼼한 사용 설명서』 『CSS 원리와 이용 방법』 『메시 축구의 신 : 전설이 된 소년의 잘 알려지지 않은 이야기』 『헬로, 풋볼 : 축구의 모든 것』 등 다수가 있다.
목 차
머리말
1장 엑스코드 및 스위프트
1. Hello, World!
2. 플레이그라운드에서 코드를 작성하는 방법을 배우자
3. 선택의 기로
4. 루프를 이용하여 코드를 반복하자
5. 옵셔널을 사용하여 프로그램을 안전하게 보호하자
6. 딕셔너리와 배열에 컬렉션을 저장하자
7. 함수 파티에 초대되었습니다
8. 사용자 정의 클래스 및 구조체
2장 버스데이 트래커
9. 스토리보드에 화면과 버튼을 생성하자
10. Birthday 클래스 추가 및 사용자 입력 제어
11. 생일을 표시하자
12. 생일을 저장하자
13. 생일 알림을 가져오자
3장 스쿨하우스 스케이트보더
14. 무대를 꾸미자
15. 스쿨하우스 스케이트보더를 실제 게임으로 만들자
16. spriteKit 물리 엔진을 사용하자
17. 난이도를 조정하고, 보석을 획득하고, 점수를 기록하자
18. 게임 상태, 메뉴, 사운드, 그리고 특수 효과
리소스
찾아보기
- 단순 변심인 경우 : 상품 수령 후 7일 이내 신청
- 상품 불량/오배송인 경우 : 상품 수령 후 3개월 이내, 혹은 그 사실을 알게 된 이후 30일 이내 반품 신청 가능
반품사유 | 반품 배송비 부담자 |
---|---|
단순변심 | 고객 부담이며, 최초 배송비를 포함해 왕복 배송비가 발생합니다. 또한, 도서/산간지역이거나 설치 상품을 반품하는 경우에는 배송비가 추가될 수 있습니다. |
고객 부담이 아닙니다. |
진행 상태 | 결제완료 | 상품준비중 | 배송지시/배송중/배송완료 |
---|---|---|---|
어떤 상태 | 주문 내역 확인 전 | 상품 발송 준비 중 | 상품이 택배사로 이미 발송 됨 |
환불 | 즉시환불 | 구매취소 의사전달 → 발송중지 → 환불 | 반품회수 → 반품상품 확인 → 환불 |
- 결제완료 또는 배송상품은 1:1 문의에 취소신청해 주셔야 합니다.
- 특정 상품의 경우 취소 수수료가 부과될 수 있습니다.
결제수단 | 환불시점 | 환불방법 |
---|---|---|
신용카드 | 취소완료 후, 3~5일 내 카드사 승인취소(영업일 기준) | 신용카드 승인취소 |
계좌이체 |
실시간 계좌이체 또는 무통장입금 취소완료 후, 입력하신 환불계좌로 1~2일 내 환불금액 입금(영업일 기준) |
계좌입금 |
휴대폰 결제 |
당일 구매내역 취소시 취소 완료 후, 6시간 이내 승인취소 전월 구매내역 취소시 취소 완료 후, 1~2일 내 환불계좌로 입금(영업일 기준) |
당일취소 : 휴대폰 결제 승인취소 익월취소 : 계좌입금 |
포인트 | 취소 완료 후, 당일 포인트 적립 | 환불 포인트 적립 |
- 단순변심으로 인한 반품 시, 배송 완료 후 7일이 지나면 취소/반품 신청이 접수되지 않습니다.
- 주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우에는 취소가 불가합니다.
- 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염된 경우에는 취소/반품이 제한됩니다.
- 제조사의 사정 (신모델 출시 등) 및 부품 가격변동 등에 의해 가격이 변동될 수 있으며, 이로 인한 반품 및 가격보상은 불가합니다.
- 뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우 진료 확인서 및 소견서 등을 증빙하면 환불이 가능하지만 이 경우, 제반 비용은 고객님께서 부담하셔야 합니다.
- 각 상품별로 아래와 같은 사유로 취소/반품이 제한 될 수 있습니다.
상품군 | 취소/반품 불가사유 |
---|---|
의류/잡화/수입명품 | 상품의 택(TAG) 제거/라벨 및 상품 훼손으로 상품의 가치가 현저히 감소된 경우 |
계절상품/식품/화장품 | 고객님의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우 |
가전/설치상품 | 전자제품 특성 상, 정품 스티커가 제거되었거나 설치 또는 사용 이후에 단순변심인 경우, 액정화면이 부착된 상품의 전원을 켠 경우 (상품불량으로 인한 교환/반품은 AS센터의 불량 판정을 받아야 합니다.) |
자동차용품 | 상품을 개봉하여 장착한 이후 단순변심의 경우 |
CD/DVD/GAME/BOOK등 | 복제가 가능한 상품의 포장 등을 훼손한 경우 |
상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우 | |
노트북, 테스크탑 PC 등 | 홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우 |