2019 섬머코딩 2차 과제로 주어진 캘린더 만들기 저장소입니다.
🔈 특이사항
안드로이드 실제 디바이스 및 에뮬레이터에서 API 21(Android 5.0) 까지 이상없이 구동 되는 것을 확인하였습니다. 하지만 Appetize.io에서 테스트시 API 23(Android 6.0)이하는 구동되지 않아 문제점을 찾아보고 있습니다.
📱 실물 테스트 기기
- 갤럭시 s10 5g (Android 9.0)
- 갤럭시 s4 (Android 5.0)
- Kotlin
- Room
- Coroutine
- MVP Architecture
- Material Calendar
- Toasty
- 화면은 스플래시(인트로), 캘린더, 스케줄 등록 3개로 구성
- 스플래시 화면에서 1.3초후 캘린더 화면으로 진입
- 캘린더 화면은 월간, 주간, 일간으로 나뉜 탭 메뉴로 구성
- 캘린더 앱의 첫 실행 시 화면은 월간이고, 그 이후에는 마지막 사용 했던 화면이 나타난다.
- 캘린더는 항상 현재(오늘)를 기준으로 표시한다.
- 캘린더는 이전 달/주/일, 다음 달/주/일로 이동할 수 있다.
- 캘린더에는 등록한 스케쥴이 표시된다. (Monthly의 경우 스케줄 존재여부만 표시)
- 스케줄 등록시 특정 일에 대한 일정을 저장하고, 시간 정보는 제공하지 않는다.
- 스케줄은 내부 DB에 저장한다.
- 앱 이용 시 발생하는 오류 사항을 최소화한다.
- 오류 발생 시 사용자가 이해하기 쉽게 표시한다.
- 다른 사람이 읽기 쉬운 코드를 작성한다.
- 사용할 수 있는 최신 구조와 기술을 사용한다.
- 직관적이고 의미 전달이 명확한 화면을 사용자에게 제공한다.
- Kotlin Coroutines을 알아보고, 안드로이드에 library 적용하기 by Taehwan
- DroidKnights 2018 도창욱 Kotlin 코루틴은 어떻게 동작하는가?
- Android Google Architecture Github
- Room 🔗 Coroutines