Skip to content

doyeonjeong/Netflix-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Netflix-iOS

Netflix

🔗Link

Source

https://github.com/doyeonjeong/Netflix-iOS

📖 상세 내용

1 2 Transition 구현

💡 개발 배경

선배 개발자인 Arex가 Netflix Clone을 강의 없이

Compositional Layout, Diffable DataSource, MVVM을 적용하여 구현해보라는 3주짜리 미션을 주셔서 진행해본 개인 프로젝트입니다.

진행했던 내용을 순차적으로 기록하기 위해 주차별 PR을 완료한 상태입니다.

코드리뷰 후 Merge 하기로 했습니다.

#1

#2

#3

🛠️ 사용 기술 및 라이브러리

  • Swift, iOS
  • UIKit
  • KMDB API
  • Lottie
  • Postman
  • UICompositionalLayout, UICollectionViewDiffableDataSourse, NSDiffableDataSourceSnapshot
  • NSCache, DispatchQueue, async/await, Task, URLSession

📱 담당한 기능

  • NSLayoutConstraint를 사용한 오토 레이아웃
  • Lazy 초기화
  • private 메서드 및 extension 로직 분리
  • CompositionalLayoutDiffableDataSourse를 사용한 UI 구현

💡 깨달은 점

  • async/await 문법은 비동기 작업을 도우나 그 자체로는 새로운 스레드를 생성하지 않음
  • Task { await } 구문으로 비동기 작업을 백그라운드에 요청하여 멀티스레딩 상황을 관리함
  • DiffableDataSource를 이용하여 동적인 UI 업데이트가 가능함
  • DispatchQueue 를 이용하여 메인 스레드와 백그라운드 스레드를 적절한 시점에 사용
  • NSCache를 이용하여 불러온 이미지 데이터의 캐시를 저장하면 빠른 로딩이 가능함
  • URLSession.dataTask 가 기본적으로 httpMethod의 GET 요청을 한다는 것을 학습함

Releases

No releases published

Packages

No packages published

Languages