장바구니 담기 close

장바구니에 상품을 담았습니다.

스위프트 프로그래밍 (제4판)

스위프트 프로그래밍 (제4판)

  • 야곰
  • |
  • 한빛미디어
  • |
  • 2025-05-30 출간
  • |
  • 672페이지
  • |
  • 183 X 235mm
  • |
  • ISBN 9791169213905
판매가

36,000원

즉시할인가

32,400

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
32,400

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

스위프트 언어에 집중한 단 하나의 가이드
스위프트 6 최신 기능부터 활용 패턴까지, 순수 스위프트 완전 정복!

스위프트는 이제 iOS와 macOS를 넘어 서버, 임베디드, 크로스 플랫폼까지 그 영역을 넓히고 있다. 쓰임새가 넓어질수록, 실행 환경이 바뀌어도 일관된 원칙으로 개발하려면 언어의 본질과 철학을 깊이 이해해야 한다. 이 책은 앱 튜토리얼이 아닌 언어 그 자체에 집중해 ‘스위프트를 깊이 이해한다’라는 목표를 온전히 실현했다. 순수 스위프트 언어를 다루는 책을 찾는다면 그리고 스위프트의 활용 패턴과 스위프트가 제시하는 패러다임을 배우고 싶다면 이 한 권으로 충분하다.

이 책은 2024년 9월 공개한 스위프트 6 버전을 전면 반영하여 동시성과 안전성, 매크로 등 최신 기능을 풍부한 예제로 설명한다. 입문자의 눈높이로 시작하면서도 메모리 관리, 패턴 매칭 등 현업에 도움이 되는 실무 개념을 되짚어 입문자뿐만 아니라 스위프트를 사용하는 개발자도 레퍼런스로 활용할 수 있다. 스위프트의 선언적이고 명확한 철학을 차분히 이해하고 최신 기능으로 코드 품질을 높이고 싶다면 이 책이 최고의 가이드가 되어줄 것이다.

★ 내용 구성
| 1부 스위프트 기초 |
스위프트의 역사와 언어의 특징과 기본 타입, 연산자, 흐름 제어, 함수, 옵셔널까지 스위프트를 이해하는 데 반드시 필요한 필수 기초 개념을 다뤄 스위프트 학습의 기초 체력을 만든다. 더불어 스위프트 코드를 작성하고 실행하는 IDE인 Xcode 개요를 살펴본다.

| 2부 객체지향 프로그래밍과 스위프트 |
구조체와 클래스, 프로퍼티와 메서드, 인스턴스 생성 및 소멸, 접근제어까지 객체지향 프로그래밍의 핵심을 스위프트 문법으로 해부한다. iOS 및 macOS, tvOS, watchOS 등의 플랫폼에서 동작하는 애플리케이션을 작성하기 위해 필수인 객체지향 프로그래밍 설계를 예제로 학습한다.

| 3부 함수형 프로그래밍과 스위프트 |
클로저, 옵셔널 체이닝과 빠른 종료, 모나드 등의 개념을 통해 스위프트의 함수형 사고를 익힌다. 객체지향에 함수형 프로그래밍을 더해 가독성과 병렬성을 높이는 방법을 제시한다.

| 4부 확장 |
서브스크립트, 상속, 타입캐스팅, 프로토콜, 익스텐션, 제네릭을 집중 탐구해 타입을 수직/수평으로 확장하는 기법을 마스터한다. 프로토콜 지향 설계를 통해 재사용성과 유연성을 극대화한다.

| 5부 스위프트 고급 |
스위프트를 더욱 강력하고 유용하게 사용하도록 도와줄 기능과 문법을 알아본다. 패턴 매칭, ARC, 오류 처리, 메모리 안전성을 다루며 안정적인 코드 작성을 돕는다. 타입 중첩, 동시성, 매크로 등 스위프트 6 최신 기능으로 생산성과 성능을 한 단계 끌어올린다.

★ 4판 주요 업데이트 사항
- 스위프트 6 버전 전면 업데이트
- Xcode 16 기준 UI 및 신규 기능 반영
- 동시성(Concurrency) 신규 챕터 수록
- 매크로(Macro) 신규 챕터 수록
- 결과 구축자(Result Builder) 신규 챕터 수록

목차

[ PART I ] 스위프트 기초

CHAPTER 1 스위프트
__1.1 스위프트의 역사
__1.2 스위프트의 언어적 특성
__1.3 스위프트 실행 환경

CHAPTER 2 스위프트 시작하기
__2.1 기본 명명 규칙
__2.2 콘솔 로그
__2.3 주석
__2.4 변수와 상수

CHAPTER 3 데이터 타입 기본
__3.1 Int와 UInt
__3.2 Bool
__3.3 Float과 Double
__3.4 Character
__3.5 String
__3.6 Any, AnyObject와 nil

CHAPTER 4 데이터 타입 고급
__4.1 데이터 타입 안심
__4.2 타입 별칭
__4.3 튜플
__4.4 컬렉션형
__4.5 열거형

CHAPTER 5 연산자
__5.1 연산자의 종류
__5.2 연산자 우선순위와 결합방향
__5.3 사용자 정의 연산자

CHAPTER 6 흐름 제어
__6.1 조건문
__6.2 반복문
__6.3 구문 이름표

CHAPTER 7 함수
__7.1 함수와 메서드
__7.2 함수의 정의와 호출
__7.3 중첩 함수
__7.4 종료되지 않는 함수
__7.5 반환 값을 무시할 수 있는 함수

CHAPTER 8 옵셔널
__8.1 옵셔널 사용
__8.2 옵셔널 추출

[ PART II ] 객체지향 프로그래밍과 스위프트

CHAPTER 9 구조체와 클래스
__9.1 구조체
__9.2 클래스
__9.3 구조체와 클래스의 차이
__9.4 구조체와 클래스 선택해서 사용하기

CHAPTER 10 프로퍼티와 메서드
__10.1 프로퍼티
__10.2 메서드

CHAPTER 11 인스턴스 생성 및 소멸
__11.1 인스턴스 생성
__11.2 인스턴스 소멸

CHAPTER 12 접근제어
__12.1 접근제어란
__12.2 접근수준
__12.3 접근제어 구현
__12.4 접근제어 구현 참고 사항
__12.5 private와 fileprivate
__12.6 읽기 전용 구현

[ PART III ] 함수형 프로그래밍과 스위프트

CHAPTER 13 클로저
__13.1 기본 클로저
__13.2 후행 클로저
__13.3 클로저 표현 간소화
__13.4 값 획득
__13.5 클로저는 참조 타입
__13.6 탈출 클로저
__13.7 자동 클로저

CHAPTER 14 옵셔널 체이닝과 빠른종료
__14.1 옵셔널 체이닝
__14.2 빠른종료

CHAPTER 15 맵 · 필터 · 리듀스
__15.1 맵
__15.2 필터
__15.3 리듀스
__15.4 맵, 필터, 리듀스의 활용

CHAPTER 16 모나드
__16.1 컨텍스트
__16.2 함수객체
__16.3 모나드

[ PART IV ] 확장

CHAPTER 17 서브스크립트
__17.1 서브스크립트 문법
__17.2 서브스크립트 구현
__17.3 복수 서브스크립트
__17.4 타입 서브스크립트

CHAPTER 18 상속
__18.1 클래스 상속
__18.2 재정의
__18.3 클래스의 이니셜라이저 - 상속과 재정의

CHAPTER 19 타입캐스팅
__19.1 기존 언어의 타입 변환과 스위프트의 타입 변환
__19.2 스위프트 타입캐스팅
__19.3 데이터 타입 확인
__19.4 다운캐스팅
__19.5 Any, AnyObject의 타입캐스팅

CHAPTER 20 프로토콜
__20.1 프로토콜이란
__20.2 프로토콜 채택
__20.3 프로토콜 요구사항
__20.4 프로토콜의 상속과 클래스 전용 프로토콜
__20.5 프로토콜 조합과 프로토콜 준수 확인
__20.6 프로토콜의 선택적 요구
__20.7 실존 타입으로서의 프로토콜
__20.8 위임을 위한 프로토콜

CHAPTER 21 익스텐션
__21.1 익스텐션이란
__21.2 익스텐션 문법
__21.3 익스텐션으로 추가할 수 있는 기능

CHAPTER 22 제네릭
__22.1 제네릭 함수
__22.2 제네릭 타입
__22.3 제네릭 타입 확장
__22.4 타입 제약
__22.5 프로토콜의 연관 타입
__22.6 제네릭 서브스크립트
__22.7 매개변수 다발

CHAPTER 23 프로토콜 지향 프로그래밍
__23.1 프로토콜 초기구현
__23.2 맵, 필터, 리듀스 직접 구현해보기
__23.3 기본 타입 확장

[ PART V ] 스위프트 고급

CHAPTER 24 타입 중첩
__24.1 중첩 데이터 타입

CHAPTER 25 패턴
__25.1 와일드카드 패턴
__25.2 식별자 패턴
__25.3 값 바인딩 패턴
__25.4 튜플 패턴
__25.5 열거형 케이스 패턴
__25.6 옵셔널 패턴
__25.7 타입캐스팅 패턴
__25.8 표현 패턴

CHAPTER 26 where 절
__26.1 where 절의 활용

CHAPTER 27 ARC
__27.1 ARC란
__27.2 강한참조
__27.3 약한참조
__27.4 미소유참조
__27.5 미소유 옵셔널 참조
__27.6 미소유참조와 암시적 추출 옵셔널 프로퍼티
__27.7 클로저의 강한참조 순환

CHAPTER 28 오류처리
__28.1 오류처리란
__28.2 오류의 표현
__28.3 오류 포착 및 처리
__28.4 오류 타입 지정하기

CHAPTER 29 메모리 안전
__29.1 메모리 접근 충돌의 이해
__29.2 입출력 매개변수에서의 메모리 접근 충돌
__29.3 메서드 내부에서 self 접근의 충돌
__29.4 프로퍼티 접근 중 충돌

CHAPTER 30 불명확 타입과 상자형 프로토콜 타입
__30.1 불명확 타입
__30.2 상자형 프로토콜 타입

CHAPTER 31 결과 구축자

CHAPTER 32 동시성
__32.1 작업
__32.2 비동기 함수의 정의와 호출
__32.3 비동기 함수의 병렬 호출
__32.4 작업 그룹
__32.5 작업의 취소
__32.6 비구조적 동시성
__32.7 액터
__32.8 전송 가능한 타입
__32.9 미복사 타입

CHAPTER 33 매크로
__33.1 독립 매크로
__33.2 부착 매크로

부록
__A. 스위프트의 주요 프로토콜
__B. 스위프트의 주요 함수
__C. 스위프트의 예약어
__D. 디버깅 식별자
__E. 컴파일러 제어 구문
__F. 사용 가능 조건 확인
__G. 속성
__H. 타입 별칭 및 호환 타입
__I. 알아두면 유용한 타입

도서소개


 

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.