배열을 선언할 때 데이터가 추가될 것을 고려해서 메모리 상에서 공간을 조금 더 확보한 상태로 메모리가 할당된다.
만약 준비한 크기만큼 데이터가 꽉 차면 더 큰 메모리 공간을 찾아서 새로운 주소를 준비하는데 이 과정이 계속 반복되면 그걸 프로그램에서 인지하고 훨씬 더 큰 메모리 공간을 준비해둔다.
어떻게 하면 사용자 경험을 방해하지 않고 더 많은 통제권을 줄 수 있을까?
→ 사용자에게 Data Privacy에 대해 더 많은 통제권을 주는 것. 필요 이상의 정보를 요청하지 않음으로서 사용자와의 신뢰 구축. 원하는 것을 최소화 함으로써 더 나은 사용자 환경을 제공
→ 제일 까다로운 것 중 하나 : 위치관련 데이터(precise: 정확도)
1) Always + When In use ⇒ iOS 11 이상, 항상 사용하는 앱
2) Always ⇒ iOS 11 이전 백그라운드 → 1번 사용하면 됨
3) Default Reduced ⇒ 정확도 관련. 애초에 정확도를 끄고 줄지, 키고 줄지 관련 옵션 설정할 수 있음. iOS 14부터~ default: false값
4) Temp: iOS14부터. 임시 액세스를 요청.
5) Use: deprecated