계절간 기온과 일교차가 큰 대한민국의 환경을 체감하며 만든 서비스입니다.
외출때마다 기온별 옷차림을 확인하는 번거로움을 해결하기 위해 제작하였습니다.
- 사용자의 위치기반 일기예보를 제공합니다.
- 사용자 위치 기반의 시간단위 일기예보를 확인할 수 있습니다.
- 외출시간의 평균기온을 제공합니다.
- 사용자가 지정한 외출시간의 일기에보를 파악하고 평균기온을 확인할 수 있습니다.
- 기온별 알맞은 옷차림을 제공합니다.
- 총 8구간의 기온에 알맞은 옷차림 정보를 제공합니다.
- 사용자의 외출시간에 맞는 옷차림을 바로 확인할 수 있습니다.
- 사용자가 직접 원하는 지역 정보를 검색합니다.
- 검색한 지역은 리스트로 저장되어 제공됩니다.
- 위젯을 통해 실시간 기온에 맞는 옷차림 정보를 제공합니다.
- 위젯을 통해 간편하게 적절한 옷차림을 확인 할 수 있습니다.
SwiftUI에 알맞은 MVVM 패턴을 통해 뷰와 뷰모델간 3대1의 관계를 설정하였습니다.
프로젝트의 디렉토리 구조는 다음과 같습니다.
앱 실행시 사용자는 ContentView를 마주하게 되며, 사용자의 조작에 따라 SearchView, ListView로 전환할 수 있습니다. |
SearchView에서는 주소 기반 장소 검색 기능을 제공하며, 항목을 누르게 되면 contentView로 전환되어 정보 확인이 가능합니다. | listView에서는 사용자가 searchView에서 선택했던 항목들을 확인 할 수 있으며 항목을 선택하게되면 contentView로 전환되어 정보를 확인 할 수 있습니다. |
위젯을 롱탭하면 편집 모드로 전환 할 수 있으며, 리스트 뷰에서 볼 수 있는 저장된 장소 목록을 통해 위젯이 표시할 지역을 선택할 수 있습니다. | 위젯을 선택 시 위젯에서 보여주고 있는 지역의 정보를 contentView에 표시하여 앱 실행 최초화면으로 시작합니다. |