ํ๋์ ์ฃผ์ ์ ๋ํ ๋ค์ํ ์๊ฐ๋ค์ ๊ธฐ๋กํ ์ ์๋ ์๋น์ค
2022.08. ~ 2023.02. (๋ฒ์ 1.0.0)
2023.02. ~ 2023.10. (๋ฒ์ 1.1.0)
2023.10. ~
https://play.google.com/store/apps/details?id=com.w36495.about
Version | |
---|---|
Android Gradle Plugin | 7.3.1 |
Gradle Version | 7.4 |
minSdk | 21 |
targetSdk | 33 |
- Kotlin
- MVP(Model-View-Presenter)
- Coroutine + Flow
- viewBinding
- Room Database
- Jetpack Navigation
-
๋ฌธ์ ์ํฉ
- '์ทจ๋ฏธ' ๋ชฉ๋ก์ ์๊ฐ ๊ฐ์์ '๋ ์' ๋ชฉ๋ก์ ์๊ฐ ๊ฐ์๊ฐ ์ผ์นํจ (๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ์ผ์นํ์ง ์์)
-
ํด๊ฒฐ ๋ฐฉ๋ฒ (๋งํฌ)
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ topics ํ ์ด๋ธ๊ณผ thinks ํ ์ด๋ธ์ ์กฐ์ธํ์ฌ select query ๋ฌธ ์ ์ฉ
SELECT topics.id, topics.topic, COUNT(topicId) AS countOfThink, topics.registDate, topics.updateDate FROM topics LEFT JOIN thinks ON topics.id = thinks.topicId GROUP BY topics.id
-
๋ฌธ์ ์ํฉ
- ์์ดํ ์ญ์ ์, NullPointerException ๋ฐ์ํ๋ฉฐ ์ฑ ์ข ๋ฃ
-
ํด๊ฒฐ ๋ฐฉ๋ฒ (๋งํฌ)
- UiState ํด๋์ค์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ฌ ๋ ํธ์ถ๋๋ Success ํด๋์ค์ ๋งค๊ฐ๋ณ์๋ฅผ nullable ๋ก ๋ณ๊ฒฝ
- ์๊ฐ ํ๋ฉด์์ ๋ฐ์ดํฐ๋ฅผ ๊ด์ฐฐํ ๋, ๊ฐ์ด null ์ธ ๊ฒฝ์ฐ popBackStack() ์ ํตํด ์ด์ ํ๋ฉด์ผ๋ก ์ด๋ ์ฒ๋ฆฌ
1) MVP ๋์์ธ ํจํด์์ View ์ Presenter ๊ฐ 1:1 ๋ก ๋์๋์ด์ผ ํ๋ ์ด์