Swift 시리즈 전체 목차 | iOS/macOS 앱 개발 완벽 가이드
이 글의 핵심
Swift 시리즈 전체 목차: iOS/macOS 개발 Swift 언어 기초부터 SwiftUI까지 10개 주제 완벽 마스터.
시리즈 소개
Swift는 Apple의 공식 프로그래밍 언어로 iOS, macOS, watchOS, tvOS 앱 개발에 사용됩니다. 이 시리즈는 Swift 기초 문법부터 SwiftUI, Combine, 비동기 프로그래밍까지 체계적으로 학습할 수 있도록 구성했습니다.
옵셔널, ARC, Copy-on-Write, 프로토콜 지향 프로그래밍, 배타적 접근(Exclusivity) 등 Swift만의 독특한 개념을 실무 관점에서 깊이 있게 다룹니다.
📚 전체 목차
🟢 기초 (중급)
#01 Swift 시작하기
26분 | 중급 | 튜토리얼
- Xcode 설치, Swift Playground
- Hello World, 기본 문법
- 메모리 안전, 배타적 접근(Exclusivity)
- Swift vs Objective-C, ARC vs Rust 소유권
- 핵심: Swift, Xcode, 메모리 안전
#02 변수와 타입
26분 | 중급 | 튜토리얼
- var vs let (변수 vs 상수)
- 타입 추론, 타입 명시
- 옵셔널 (Optional), nil 안전성
- 옵셔널 바인딩 (if let, guard let), 옵셔널 체이닝
- 핵심: var, let, 옵셔널, nil
#03 컬렉션
26분 | 고급 | 튜토리얼
- Array, Dictionary, Set
- Copy-on-Write (COW) 내부 동작
- 힙 버퍼 공유, 고유성 검사
- isKnownUniquelyReferenced
- 핵심: Array, Dictionary, COW
#03 함수와 클로저
20분 | 중급 | 튜토리얼
- 함수 정의, 매개변수, 반환값
- 클로저 (익명 함수), 축약 문법
- 고차 함수 (map, filter, reduce)
- @escaping, @autoclosure
- 핵심: 함수, 클로저, 고차 함수
🟡 객체 지향 & 프로토콜 (중급~고급)
#04 클래스와 구조체
분량 미확인 | 중급 | 튜토리얼
- 클래스 (참조 타입) vs 구조체 (값 타입)
- ARC (자동 참조 카운팅), 강한/약한 참조
- 값 타입 복사 의미론
- 핵심: 클래스, 구조체, ARC
#05 프로토콜
분량 미확인 | 고급 | 튜토리얼
- 프로토콜 정의, 채택, 준수
- 프로토콜 지향 프로그래밍 (POP)
- 프로토콜 확장, 기본 구현
- Associated Type, Self
- 핵심: Protocol, POP, 확장
#06 제네릭
분량 미확인 | 고급 | 튜토리얼
- 제네릭 함수, 제네릭 타입
- 타입 제약 (where 절)
- Associated Type 활용
- 핵심: Generics, where 절
🔵 고급 기능 (고급)
#07 에러 처리
분량 미확인 | 중급 | 튜토리얼
- throw, try, catch
- do-catch 블록, try?, try!
- Error 프로토콜, 커스텀 에러
- defer (정리 작업)
- 핵심: Error, throw, try
#08 비동기 프로그래밍
분량 미확인 | 고급 | 튜토리얼
- async/await (Swift 5.5+)
- Task, TaskGroup
- Structured Concurrency
- Actor, @MainActor
- 핵심: async/await, Actor
🟣 UI 프레임워크 (고급)
#09 SwiftUI
28분 | 중급 | 튜토리얼
- 선언적 UI, 상태 관리
- @State, @Binding, @ObservedObject, @StateObject
- MVVM 패턴, ObservableObject
- NavigationStack, List, Form
- 핵심: SwiftUI, State, MVVM
#10 Combine
분량 미확인 | 고급 | 튜토리얼
- 리액티브 프로그래밍, Publisher, Subscriber
- Operator (map, filter, flatMap)
- Combine + SwiftUI 통합
- 핵심: Combine, Publisher, Reactive
🎯 학습 경로
1️⃣ Swift 입문 (2주 코스)
#01 시작하기 → #02 변수와 타입 → #03 함수와 클로저
목표: Swift 기본 문법 이해
난이도: ⭐⭐☆☆☆
결과물: 간단한 콘솔 프로그램
2️⃣ iOS 앱 개발 기초 (4주 코스)
#02 변수 → #03 컬렉션 → #04 클래스 → #05 프로토콜 → #09 SwiftUI
목표: SwiftUI로 간단한 앱 제작
난이도: ⭐⭐⭐☆☆
결과물: Todo 앱, 메모 앱
3️⃣ 고급 Swift (6주 코스)
#05 프로토콜 → #06 제네릭 → #07 에러 → #08 비동기 → #10 Combine
목표: 프로토콜 지향 프로그래밍, 비동기 마스터
난이도: ⭐⭐⭐⭐☆
결과물: 네트워크 API 호출 앱
4️⃣ 실전 iOS 개발 (8주 코스)
전체 시리즈 + 실전 프로젝트
목표: 앱스토어 출시 가능한 앱 제작
난이도: ⭐⭐⭐⭐⭐
결과물: 날씨 앱, SNS 앱, 쇼핑몰 앱
💡 시리즈 특징
✅ Apple 공식 언어
- iOS, macOS, watchOS, tvOS 개발
- Swift 5.5+ 최신 문법 (async/await, Actor)
- SwiftUI, Combine 최신 프레임워크
✅ 메모리 안전성
- 옵셔널로 nil 안전성 보장
- ARC (자동 참조 카운팅)
- Copy-on-Write 최적화
- 배타적 접근(Exclusivity) 검사
✅ 프로토콜 지향
- 프로토콜 확장, 기본 구현
- 제네릭, Associated Type
- POP (Protocol-Oriented Programming)
✅ 실전 중심
- SwiftUI 상태 관리 패턴
- MVVM 아키텍처
- Combine 리액티브 프로그래밍
- 비동기 네트워크 호출
🔗 관련 시리즈
- Kotlin 시리즈 - Android 개발
- Rust 시리즈 - 메모리 안전 시스템 언어
- iOS 개발 가이드 - 실전 iOS 앱 개발
❓ 자주 묻는 질문
Q1. Swift는 어디에 사용하나요?
A: iOS (iPhone), macOS (Mac), watchOS (Apple Watch), tvOS (Apple TV) 앱 개발에 사용됩니다.
Q2. Swift와 Objective-C의 차이는?
A: Swift는 더 간결하고 안전하며 현대적인 문법을 제공합니다. Objective-C와 상호 운용 가능합니다.
Q3. 옵셔널은 왜 필요한가요?
A: nil (값 없음)을 안전하게 처리하기 위해 필요합니다. Null 포인터 에러를 컴파일 타임에 방지합니다.
Q4. SwiftUI vs UIKit 어떤 걸 배워야 하나요?
A: 신규 프로젝트는 SwiftUI를 권장합니다. 기존 코드 유지보수는 UIKit 지식이 필요합니다.
Q5. Combine vs async/await?
A: async/await (Swift 5.5+)가 더 간결하고 직관적입니다. Combine은 복잡한 리액티브 로직에 유용합니다.
📖 추천 학습 자료
공식 문서
- Swift.org - Swift 공식 사이트
- Apple Developer - Apple 개발자 문서
- Swift Language Guide - 공식 언어 가이드
개발 환경
- Xcode - 공식 IDE
- Swift Playgrounds - iPad/Mac 학습 앱
커뮤니티
- Swift Forums - 공식 포럼
- Hacking with Swift - 튜토리얼
- SwiftLee - Swift 블로그
시작하기: Swift 시작하기 (#01)에서 iOS 개발 여정을 시작하세요!