funct7 / ios_async_examples

A project demonstrating various methods for handling asynchronous code execution

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Concurrency Examples

Motivation

프로그램 로직을 구현함에 있어 비동기적으로 호출되는 코드로 인해 생기는 어려움을 현실적인 예제를 통해 보여주고, 다양하게 제시된 해결책들을 소개함으로써 각 방법의 장단점을 방문자들이 알 수 있도록 하기 위해 이 예제를 만들었습니다.

Scenario

로그인

사용자의 입력을 대기하고 있다가 순차적인 네트워크 호출과 동시 호출을 하는 로그인 과정을 통해 현실적인 비동기 코드를 예시로 보여줍니다.

과정

  1. 버튼 누름. 얼럿 띄우기.
  2. 사용자 입력 값에 따라 로그인 또는 취소.
  3. 유저 프로필 정보 요청. (mock 서버 사용)
  4. 유저 id로 피드 불러오기.
  5. 피드의 유저 id로 사용자 이미지 및 닉네임 불러오기.

Solutions

  1. Callback
  2. Reactive (RxSwift)
  3. Background thread
  4. Suspending function

About

A project demonstrating various methods for handling asynchronous code execution


Languages

Language:Swift 100.0%