네트워킹
넷플릭스 애플뮤직 페이스북
언제 네트워킹이 필요할까??
컨텐츠의 경우에는 암호화와 워터마킹이 된 영상이 내려온다.
그래서 영상유출시 누가 했는지 다 알 수 있다.
이런 앱들이 Networking이 안된다면?
이 앱 모두 정상작동을 하지 못한다.
데이터의 전달이 되지 않으면 안되니깐!!
Networking + IOS
우리는 IOS에서 Networking 작업을 어떻게 할 수 있을까? —> URLSession
IOS에서는 URLSession class를 통해서 네트워크 작업을 할 수 있다.
이론
네트워킹이라는 작업은 상당히 느린 작업이다.
네트워크보다 빠른 작업은 메모리 접근, 디스크 파일 읽기 등. 이것보다 네트워킹은 상당히 느린 작업이다.
앱에서는 앱의 반응성이 상당히 중요하다. 반응이 느리면 앱 사용자의 불만은 증가한다.
사용자를 빡치게 만드는 현상 뒤에는 어떤 원인이 있었을까? —> 동시성 Concurrency
동시성을 제공해 주지 않아서다.
—> 컴퓨터는 네트워킹이 되는 동안에도 사용자 인터렉션이 되어서 즉각적인 반응을 주어야하는데 그렇지 못한 경우가 발생한 것이다.
어떻게 이 동시성을 만들어 줄 것인가?
IOS에서는 이러한 동시성을 만들어 주기 위해서 제공해 주는 API들이 있는데 이는 다음 두가지다.
- GCD
- Operations
우리는 GCD를 이용해서 어떻게 동시성이 필요한 작업들을 안전하게 수행할지에 대해서 알아볼 것이다.
앞으로 배울 것
- Concurrency
- GCD: Concurrency를 구현하기 위한 것
- HTTP: HTTP를 통해 네트워킹에 필요한 기초지식을 배울 예정이다.
- URLSession: 실제 IOS에서 네트워킹을 하기 위한 쿨랴수
'IOS application > Networking' 카테고리의 다른 글
5. DispatchQueue는 어떻게 사용할까? (0) | 2021.04.16 |
---|---|
4. GCD (Grand Central Dispatch) (0) | 2021.04.15 |
3. Concurrency (동시성) (0) | 2021.04.14 |
2. 네트워킹 하는 것을 확인할 수 있는 툴 (0) | 2021.04.12 |
1. 네트워킹에 필요한 기초지식 (0) | 2021.04.11 |