주요 기능
Map
- MKMapView 활용
- Location Autherization에 따른 분기처리
- Allow → 사용자의 현재 위치 표시 및 현재 위치로부터 목표 지점까지의 거리 계산
- Denied → Alert창을 통한 설정 화면으로 이동
- Custom
- Custom Pin/Marker 사용
- 현재 위치는 빨간색으로 표시
- 거점지의 경우는 브랜드 메인 색상(black200)으로 표시
- Custom Line 사용
- 브랜드 색에 맞게 현재 위치로부터 목표 지점까지의 거리를 그라데이션 색의 선으로 표시
Network
- URLSession 사용
- URLSession.shared.dataTask(with: url)
- JSONDecoder로 서버 응답 데이터 디코딩
- Singleton Pattern 사용
- Controller와 APIManger 코드 분리
- 거점지 API와 예약 현황 APIManger 나눠서 작성
UserDefaults
- UserDefaults Key 상수화
- UserName 저장
- 온보딩에서 유저의 이름을 입력 받은 뒤, UserDefaults로 저장
Framework
- 프로젝트 내부의 용량을 줄이기 위해 사용
- Util 프레임워크
- 화면 전환
- UIKit+Extension
- Foundation+Extension
- Resource 프레임워크