<aside>
💡 토글버튼(►)을 클릭하면 세부 내용을 확인하실 수 있습니다.
</aside>
개요
- 평소 생각을 정리하거나 기분을 전환하고 싶을 때 산책을 즐겨 하는 편이며, 주변의 산책할만한 장소를 찾아보거나 나만의 산책 코스를 만들어 기록하고 싶다는 생각이 들었습니다.
- 그래서 기존 앱스토어에 있는 앱을 찾아본 결과, 달리기 또는 헬스와 같이 무거운 운동과 관련된 앱이 대부분이었습니다. 그래서 이 프로젝트는 무거운 운동 보다는 가볍게 하는 산책에 초점을 맞추고 싶었습니다.
- 특히 이 앱은 사용자의 위치 정보와 이동한 경로를 실시간으로 기록하면서 UI를 반응형으로 즉각 업데이트 하는 것이 핵심이라고 생각했기 때문에 RxSwift + MVVM 조합을 선택했습니다.
- 이를 위해 첫번째 앱인 My Coin Profit (코인 수익 계산기) 출시 이후 MVVM 아키텍처와 RxSwift를 학습했고, 이 프로젝트에 적용하여 앱스토어에 두번째로 출시하게 되었습니다.
개발 환경
- 개발인원: 1인
- 아키텍처 패턴: MVVM
- 지원 기기 및 버전: iPhone / iOS 16.1+
- 스토리보드 vs 코드: 상황에 따라 스토리보드와 코드를 모두 사용했습니다.
- 스토리보드: 화면 내의 UI 배치, 테이블뷰와 컬렉션뷰의 커스텀 셀 구성(xib), 오토레이아웃 등
- 코드: 화면 전환, 조건 및 시간에 따른 UI의 변화, 오토레이아웃 등
- 주요 프레임워크 및 라이브러리
- UI 및 오토레이아웃:
UIKit, SwiftUI, SnapKit, Hero, Lottie
- 비동기처리 및 바인딩:
RxSwift, RxCocoa, RxGesture
- 데이터베이스:
Realm
- 지도 및 사용자의 위치 표시:
Core Location, Mapkit, Cluster
- 위젯 및 실시간 현황 표시:
WidgetKit, ActivityKit
- 앱 출시 후 모니터링:
FirebaseAnalytics, FirebaseCrashlytics
- 네트워킹
구성 및 주요 기능