티스토리 뷰

TIL

[TIL] 2022 / 08 / 03

희철 2022. 8. 4. 00:09

Xcode에서 gitignore생성 가능

-> 따로 글쓰기

 

 

yyyy vs YYYY

 

 

YYYY는 Week of Year의 년(?)을 나타내고 yyyy가 calendar year를 나타내므로, yyyy를 쓰면됨.

 

 

타입추론 vs 타입어노테이션

 

 

예전에는 타입 어노테이션을 해주는 것이 더 빨랐지만, 애플이 알고리즘을 점점 수정하면서 타입 추론을 이용하는 것이 시간이 덜 걸림.

 

 

디바이스 네트워크 컨디션

 

 

Window - Devices and Simulators에서 기기가 연결되어 있다면 아래쪽에서 네트워크 컨디션을 설정해서 느리게 할 수 있음.

 

 

인코딩

 

 

검색 API를 사용할때 사용자가 한글로 입력해도 주소창엔 변환돼서 보임.

 

실제로 네트워크 통신을 할때 URL에 한글을 넣으면 제대로 동작하지 않음.

-> 인코딩필요

 

addingPercentEncoding사용

let text = text.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!

 

 

 

Pagenation

 

 

웹사이트에서 페이지를 구분하는 것처럼 대량의 데이터와 리소스를 분할해서 가져오는 방법

-> 앱에서는 무한 스크롤을 생각하면됨

 

두 가지 방법이 있음.

1. Offset Based Pagenation

 

몇 번째 페이지에서 몇 개의 데이터를 보여줄지 쿼리스트링으로 전달.

 

서버가 가지고있는 데이터가 잘 변하지않는 환경에서 쓰임.

-> 만약 데이터를 가져오는 중, 새로운 데이터가 추가되었다면 추가된만큼 다음 페이지에서 중복되어 보일 것임.

 

1~30을 보여주고 다음에 31~60을 보여줘야되는데 중간에 5개가 추가된다면 1~30에는 새로 추가된 데이터 5개가 포함되므로 뒤의 5개는 다음 페이지로 밀려나게되어 중복.

 

 

2. CursorPagenation

 

클라이언트가 가지고 있는 마지막 데이터를 기준으로 다음 데이터를 조회.

 

새로운 데이터는 계속 앞쪽에 추가되지만 마지막 데이터가 기준이므로 중복되지않음.

 

 

 

First Class Object

-> 내일 수업까지하고

'TIL' 카테고리의 다른 글

[TIL] 2022 / 08 / 05  (0) 2022.08.06
[TIL] 2022 / 08 / 04 (TMDB 프로젝트)  (0) 2022.08.05
[TIL] 2022 / 08 / 02  (0) 2022.08.02
[TIL] 2022 / 08 / 01  (0) 2022.08.01
[TIL] 2022 / 07 / 31  (0) 2022.07.31
댓글
최근에 올라온 글
Total
Today
Yesterday