23일차 수업 내용을 정리한 글입니다.
Learned
.gitignore
- 의도적으로 git에서 변경사항을 추적하지 못하도록 등록해놓은 파일 또는 폴더 목록
- xcode에서 Empty 파일 형식으로 생성할 수 있음.
- 이미 추적 중인 파일을 나중에 gitignore에 추가했다면
git에서 해당 파일을 제거하는 작업이 필요함.
git rm --cached file_name 명령어로 제거 후 commit, push
프로그래밍 언어, OS에 따라 .gitignore 파일을 만들어주는 사이트
https://www.toptal.com/developers/gitignore
Pagenation
1) 개요
- 대량의 데이터와 리소스를 분할해서 가져오는 방법을 말하며,
주로 서버의 데이터와 리소스를 다룰 때 사용한다. - 쇼핑 사이트에서 판매하는 모든 물품들을 한번에 보여주지 않고
스크롤을 내리는 시점에 데이터를 추가로 가져오는 기능
2) Offset Based Pagenation
- 특정 인덱스 또는 페이지를 기준으로 일정한 수(Offset) 만큼 데이터를 가져오는 방법
- 오프셋 정보를 쿼리스트링이나 매개변수로 서버에 전달
- 그 종류로 PageNumberPeganation, LimitOffsetPagenation이 있음.
- 커뮤니티 사이트처럼 새로운 데이터가 빠르게 추가되는 환경에서는
데이터를 요청한 사이에 데이터가 갱신되어 사용자가 중복된 데이터를 볼 수도 있음. - 따라서 데이터의 변화가 적은 환경에서 사용하는 것이 적절함.
3) Cursor Pagenation
- 클라이언트가 가진 마지막 데이터를 기준으로 다음 데이터를 가져오는 방법
- 항상 현재 데이터의 위치(커서)가 기준이기 때문에 최신 데이터를 조회하기
힘들 수 있고 특정 위치에 대한 데이터를 가져오기 어렵다. - 예를 들어 커뮤니티 사이트에서 10번째 페이지를 보다가
곧바로 70번 페이지로 건너뛰기가 어렵다.
First Class Object
1) 스위프트 언어의 특징
- 객체 지향 프로그래밍 (OOP)
- 함수형 프로그래밍
- 프로토콜 지향 프로그래밍
2) 일급 객체의 특징
- 변수와 상수의 값으로 넘겨줄 수 있다.
- 함수의 반환값으로 사용할 수 있다.
- 매개변수의 값(인자)으로 넘겨줄 수 있다.
Swift에서 함수는 일급 객체이기 때문에 이런 특징을 모두 가진다.
3) 클로저 (이름없는 함수)
- 함수는 호출 형식이 확장되어 함수 호출 연산자 없이도 사용이 가능하며,
매개변수, 반환값, 실행 구문으로 구성된 하나의 타입으로 사용이 가능하다. - 여러 함수들이 오버로딩으로 이름이 같다면 함수 타입으로 구분할 수 있고,
함수 타입도 같다면 매개변수 이름을 명시한 함수 표기법으로 구분할 수 있다. - 함수 타입을 반환값으로 사용할 때 가장 왼쪽에 위치한 "->"를 기준으로
매개변수와 반환값을 구분한다. - 함수의 매개변수로 함수 타입이 들어가서 실질적인 연산을 담당할때
매개변수로 들어간 함수를 브로커라고 한다.
기타
- 타입 추론이 타입 어노테이션보다 빌드 및 컴파일 속도가 빠르다.
관련 링크
- Xcode에서 네트워크 환경을 설정하여 테스트하는 기능이 존재
주로 네트워크가 느린 환경에서 테스트할 때 사용하고
보통 디바이스에서 테스트하지만 시뮬레이터에서도 가능하다. - 인터넷 브라우저는 URL에 한글을 입력했을 때
자동으로 UTF-8 인코딩을 해준다. - 국가에서 운영하는 공공 데이터 센터 웹 페이지가 있다.
관련 링크
이상입니다.
'TIL' 카테고리의 다른 글
[Sesac IOS] 25일차 TIL (0) | 2022.08.07 |
---|---|
[Sesac IOS] 24일차 TIL (0) | 2022.08.05 |
[Sesac IOS] 22일차 TIL (0) | 2022.08.03 |
[Sesac IOS] 21일차 TIL (0) | 2022.08.01 |
[Sesac IOS] 20일차 TIL (0) | 2022.07.29 |