Skip to content

Commit 9847b4d

Browse files
committed
Session2-2
1 parent a78483c commit 9847b4d

File tree

5 files changed

+96
-40
lines changed

5 files changed

+96
-40
lines changed

README.md

Lines changed: 55 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,28 @@
11
# iOS-App-Dev-Basics
22

3-
## [1. 개발환경](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-개발환경)
4-
* [Xcode 둘러보기](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-1-xcode-둘러보기) `샘플코드 : BareBasic`
5-
* [스토리보드](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-2-스토리보드) `샘플코드 : BareBasic`
6-
7-
* [인터렉션](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-3-인터렉션) `샘플코드 : HelloiPhone`
8-
* [멀티테스킹](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-3-멀티테스킹)
9-
* 샌드박스
10-
11-
12-
13-
## 2. Swift Basic
14-
* Swift 언어 소개
15-
* Types
16-
* Control Flow
17-
* Optional
18-
* Function Type
19-
* Closure
20-
* Class, Struct, Enum
3+
## [1. 개발환경](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md)
4+
* [1-1. Xcode 살펴보기](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-1-xcode-살펴보기) `샘플코드 : BareBasic`
5+
* [1-2. 스토리보드](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-2-스토리보드) `샘플코드 : BareBasic`
6+
7+
* [1-3. 인터렉션](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-3-인터렉션) `샘플코드 : HelloiPhone`
8+
* [1-4. 멀티테스킹](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter1.md#1-3-멀티테스킹)
9+
* 1-5. 샌드박스
10+
11+
12+
13+
## [2. Swift Basic](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter2.md)
14+
* [2-1. Swift 와 Playgrounds](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter2.md#2-1-swift-와-playgrounds)
15+
* [2-2. 기본 타입에 대한 let 과 var](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter2.md#2-2-기본-타입에-대한-let-과-var)
16+
* [2-3. Collections](https://github.com/CodersHigh/iOS-App-Dev-Basics/blob/master/chapter2.md#2-3-collections)
17+
* 2-4. Control Flow
18+
* 2-5. Optional 소개
19+
* 2-6. Function
20+
* 2-6. Function Type
21+
* 2-7. Closure
22+
* 2-8. Structure
23+
* 2-9. Enumeration
24+
* 2-10. Class
25+
* 2-11. Value 타입과 Reference 타입
2126

2227
## 3. Interaction
2328
* View & Control `샘플코드 : Money Converter`
@@ -78,24 +83,35 @@
7883
* Document Based App과 ShoeBox App
7984
* SandBox 하에서 폴더 접근
8085

81-
## 11. 위치정보 이용하기
82-
* MapKit의 기본 사용법
83-
* CoreLocation의 이해
84-
* MKAnnotation 프로토콜
85-
* Pin으로 하는 다양한 작업
86-
87-
## 12. UICollectionView 기본
88-
* CollectionView와 TableView의 비교
89-
* CollectionViewLayout에대한 이해
90-
* 사진 선택뷰 만들기
91-
* 사진 선택뷰 레이아웃과 이벤트 처리
92-
93-
## 13. 터치와 이벤트
94-
* Touch 이벤트 처리하기
95-
* 기본적인 드로잉
96-
* 멀티터치, 색상 선택 기능 확장
97-
98-
## 14. Dynamic Animation
99-
* UIViewAnimation
100-
* UIDynamics 의 이해
101-
* Spring Animation
86+
87+
88+
89+
90+
91+
92+
93+
94+
95+
96+
97+
## ~~11. 위치정보 이용하기~~
98+
* ~~MapKit의 기본 사용법~~
99+
* ~~CoreLocation의 이해~~
100+
* ~~MKAnnotation 프로토콜~~
101+
* ~~Pin으로 하는 다양한 작업~~
102+
103+
## ~~12. UICollectionView 기본~~
104+
* ~~CollectionView와 TableView의 비교~~
105+
* ~~CollectionViewLayout에대한 이해~~
106+
* ~~사진 선택뷰 만들기~~
107+
* ~~사진 선택뷰 레이아웃과 이벤트 처리~~
108+
109+
## ~~13. 터치와 이벤트~~
110+
* ~~Touch 이벤트 처리하기~~
111+
* ~~기본적인 드로잉~~
112+
* ~~멀티터치, 색상 선택 기능 확장~~
113+
114+
## ~~14. Dynamic Animation~~
115+
* ~~UIViewAnimation~~
116+
* ~~UIDynamics 의 이해~~
117+
* ~~Spring Animation~~

Slides/Session_2_1_LetVar.key

333 KB
Binary file not shown.

Slides/Session_2_1_Swift.key

2.4 MB
Binary file not shown.

chapter2.md

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,35 @@
99
* 막상 해 보니 어렵더라. 이건 몇가지 이유가 있겠지만 Swift가 안전을 위한 장치를 가지고 있고 엄격한 타이핑을 하기 때문.
1010
* 추가로 말씀드리고 싶은 건, 함수형 언어. 생각의 방식이 바뀌어야 한다.
1111

12+
13+
* 애플은 왜 Swift를 만들었을까?
14+
* Objective-C가 언어 사용빈도 순위를 막 치고 올라가는 시점. 1982년 언어 탄생이후 30년 만에 빛 좀 보나?
15+
* 개발자 커뮤니티에 혼란을 주면서. 발표 당시 개발자들의 표정. 환호 반 멀뚱 반.
16+
17+
18+
* 함수형 프로그래밍이라는 화두
19+
* 사실 Objective-C도 이미 GCD와 Block 문법을 통해 함수형 언어의 특성을 일부 받아들인 상태.
20+
* 수정 가능한 상태의 공유에 대한 위험성을 회피하고자 하는 공감대
21+
* 멀티 코어 시대에 맞는 방식의 프로그래밍 언어 필요
22+
23+
24+
* 하지만 현실은
25+
* iOS 앱 개발을 위한 API는 대부분 Objective-C 와 C로 작성
26+
* API를 얼마나 뜯어고쳐야 할까
27+
* 모든 개발자가 빠르게 따라오지 않는다
28+
* 개발자 커뮤니티와 함께 가지 않으면 의미 없음
29+
30+
31+
* 그래서 결론은
32+
* 다양한 채널 블로그, WWDC 비디오 세션등을 통해 개발자 교육
33+
* Swift 라이브러리 확충
34+
* 애플이 코딩 패러다임을 바꾸고 싶어하는 것은 확실하나, 개발자들이 얼마나 잘 받아주느냐에 달렸다
35+
* 우리도 길게 보고 공부하자.
36+
37+
1238
동영상을 보시는 분들 중에는 Obj-C로 개발을 하고 계신 분들이 있겠지만, 이 코스의 목표는 iOS App을 Swift로 만들어 보는 것.
1339
Swift 언어에 대해 깊이 파고들지는 않는다.
40+
1441
Swift를 통해 iOS앱 개발에 처음 발딛는 분들은 물론이고 Obj-C 개발을 경험하신 분들 모두에게 말씀드리고 싶은 것은, Swift로 단지 iOS App 만드는 것에 만족하지 마시고 Swift언어 자체, iOS API를 사용하기 위한 Swift가 아닌 알고리즘 문제 해결을 위한 Swift에 관심을 가져 주길 바란다.
1542

1643
### Playgrounds
@@ -50,7 +77,10 @@ let은 상수이며 var는 변수이다. let으로 정의한 값은 불변. var
5077
* Float는 32bit 소수, Double은 64bit 소수. 그냥 만들면 Double
5178
* Int를 Float에 더하기
5279

53-
80+
### Tuple
81+
* 코마로 구분된 값의 리스트.
82+
* 간단하게 만들어 쓰고 읽을 수 있다.
83+
* element 번호로 접근하거나 만들 때 지정한 이름으로 접근 가능
5484

5585
## 2-3. Collections
5686
* Array
@@ -60,3 +90,13 @@ let은 상수이며 var는 변수이다. let으로 정의한 값은 불변. var
6090

6191

6292
* Dictionary
93+
94+
95+
## 2-4. Control Flow
96+
97+
## 2-5 Optional 소개
98+
99+
100+
## 2-6 Function
101+
102+
## 2-7 Function Type

0 commit comments

Comments
 (0)