2. Swift?
• iOS, macOS, watchOS, tvOS 개발 언어
• 안전하고 명확한 개발 지향
• Objective-C 보다 성능 향상
• Linux 개발 지원
• 하나의 프로그램에서 C/C++/Objective-C 코드를 동시에 실행할
수 있음
3. Swift 역사
• 2010년 7월 Chris Lattner 프로젝트 시작
• 2014년 6월 WWDC 2014에서 1.0과 첫번째 Swift 앱 “WWDC” 발
표
• 2014년 9월 1.0 릴리즈
• 1.1의 망… 아픔을 딛고 1.2, 2.0, 2.2를 거쳐 안정화
• 2015년 말 Open source 로 개방
• 2016년 WWDC 2016에서 3.0 발표 (스터디 기준 버전)
Chris Lattner
LLVM과 Swift의 아버
지 격
4. Swift Open Source
• https://github.com/apple/swift
• https://github.com/apple/swift-evolution
5. Swift의 문법적 특징
• 강한 타입 언어
• Optionals and chaining
• Value-Types
• Protocol-Oriented
• 함수형 언어 기능 지원
• ARC
• ……
6. 왜 Swift를 배워야하나?
• “안전”하고 “명확”하고 “빠르고” “유지보수가 쉬운” 앱을 “일정
단축”해서 개발할 수 있음
• 애플의 최신 기술들이 Swift 기반으로 소개되고 있음
• macOS 10.12 Sierra에서 운영체제 상당 부분 코드가 Swift로 대체
• Swift는 쉽다. 쉬우니 빨리 배우고 말자.
7. Objective-C에서 Swift로 전환할 때의 리스크
• 프로그래밍 모델, 타입, 인터페이스 설계 등 언어의 철학과 이해가
다름
• 문법과 API 인터페이스의 잦은 변경
• iOS 7 / OS X 10.9 이상 운영체제 앱을 지원 (Swift 2.0 기준)
• C/C++ 기반 라이브러리/코드와 통합을 위한 추가 작업들
• Swift 1.1의 트라우마(망…)
8. Swift 스터디 순서(변경될 수도 있음)
• 1회. Swift 소개
• 2회. 타입 파트 1: default types, value-type, optionals and chaining
• 3회. 함수
• 4회. 제어문
• 5회. 타입 파트 2: struct, class, memory management, protocol, closure
• 6회. 프로토콜 오리엔티드 프로그래밍 (WWDC 2015, WWDC 2016)
• 7회. Swift 성능에 대한 이해 (WWDC 2016)
• 8회. 코드 리딩 1: SwiftyJson
• ……