-
Notifications
You must be signed in to change notification settings - Fork 4
๐ 3์ฃผ์ฐจ ๋ฐ์ผ๋ฆฌ ์คํฌ๋ผ
DAY 1 ์ฃผ๊ฐ ๊ณํ ํ์ - 2022/11/21
- ์ฉํ: ์ผ์ด์๋ ํ๋ค์๋๋ฐ ์ค๋๊น ์ฉ์ฉํฉ๋๋ค.
- ๋ณํฌ: ์ปคํผ ๋จน๊ณ ์ถ์ด์ โ ๋จน์ฃ ๊ทธ๋ผ
- ํ์
- ์งํ์ฒ ์ ์ฌ๋์ด ๋ง์์ ๋๋ฌด ๋์๊ฐ์ง๊ณ ๊ธฐ์ ํ ๋ป ํ๋ค. ๊ทผ๋ฐ ๊ธฐ์ ์ ์ํด์ ํ๋ณตํ๋ค!
- ์น๋ฏผ: ์กธ๋ ธ๋๋ฐ ๋์ฐฉํด์ ํ์๋ค ๋ณด๋๊น ํ๋ณตํฉ๋๋ค.
- ์ฉํ: ์ฌ๋ฐ๋ ๊ฒ์์ ์ฐพ์์ ํ๋ค(The past within, DYO)
- ๋ณํฌ: ์ด๋ฐฅ ์์ผ ๋จน์ด์ ํ๋ณตํ์ต๋๋ค
- ํ์: ์ด์ ๋์ฐฝ์ ์ผ๋ฌด์ง๊ฒ ๋จน์๋ค! ๋๋ฌด ํ๋ณตํ๋ค! ์ฉ์ฉ์ ์๋ ๊ฐ๋๋ฐ ๊ฐ์ฑ๋น๊ฐ ๊ด์ฐฎ์๋ค! ๊ฐ๋ณผ๋งํ ์ ์ง์ ์ฐพ์ ๊ฒ ๊ฐ์์ ํ๋ณตํ๋ค!
- ์ฉ์ฉ์ ์ ๊ฐ์ฃ !!!
- ์น๋ฏผ: local properties์ ๊ฐ์ ์จ๊ฒจ์ ํ๋ณตํ์ต๋๋ค!
- 1์ผ์ฐจ
- ๋ฌ๋ฆฌ๊ธฐ ์์ ๋ฒํผ ์ธ๋ถ ๊ตฌํ (๊ถํ์์ฒญ, ํ๋ฉด ์ด๋)
- ์ํ ๊ทธ๋ฃน noti ๋ณด๋ด๊ธฐ
- Naver Map API ์ฐ๋
- 2์ผ์ฐจ
- ๋ฌ๋๋ชจ๋ ๋ฐ๋ชจ๋ฒ์ ๋ง๋ค๊ธฐ
- 3์ผ์ฐจ
- ๋ฌ๋๋ชจ๋ ์ธ๋ถ ๊ตฌํ
- ๋ฌ๋์ข ๋ฃ ํ๋ฉด ๊ตฌํ
- ๋ฌ๋ ์ข ๋ฃ ์ ๋ก์ปฌ ๋๋น์ ํ์คํ ๋ฆฌ ์ ์ฅ
- ์ธ์ฆ๊ธ ์์ฑ ํ์ด์ง๋ก ํ์คํ ๋ฆฌ ๋ณด๋ด์ฃผ๊ธฐ
- 4์ผ์ฐจ
- ๋ฐ๋ชจ๋ฐ์ด ์ค๋น
- 1์ผ์ฐจ
- ๊ทธ๋ฃน ์์ดํ (xml) ๊ตฌํ
- ๋ด ๊ทธ๋ฃน ํ๋ฉด ๊ตฌํ
- 2์ผ์ฐจ
- ๊ทธ๋ฃน ์์ฑ ๊ตฌํ
- ๊ทธ๋ฃน ๋ํ ์ผ ์ผ๋ถ ๊ตฌํ
- 3์ผ์ฐจ
- ๊ทธ๋ฃน ๋ํ ์ผ ๊ตฌํ
- ๊ทธ๋ฃน ์์ ๊ตฌํ
- 4์ผ์ฐจ
- ๊ฒ์๊ธ(์ธ์ฆ๊ธ, ํ๋ณด๊ธ) ์์ดํ (xml) ๊ตฌํ
- ๊ฒ์๊ธ ํ๋ฉด ๊ตฌํ
- 1์ผ์ฐจ
- ๋ก๊ทธ์ธ ์ ๋ณด ๋ฐ์ดํฐ์คํ ์ด์ ์ ์ฅ
- ๋ง์ด๋ฐ, ํ๊ฒฝ์ค์ ๋ ์ด์์ ์์ฑ
- 2์ผ์ฐจ
- ๋ฃธ db ์ค์ ๋ฐ ์บ๋ฆฐ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋์ฐ๊ธฐ
- 3์ผ์ฐจ
- ๋๋ค์, ํ๋กํ ์ฌ์ง ์์ ๊ธฐ๋ฅ ๊ตฌํ
- 4์ผ์ฐจ
- ๋ฆฌ์ฌ์ดํด๋ฌ๋ทฐ๋ก ์ด๋๊ธฐ๋ก ๋์ฐ๊ธฐ
DAY 2 - 2022/11/22
-
์น๋ฏผ ์ด์ ์ข ํผ๊ณคํ๋๋ฐ ํน ์ ์ ์์ด์ ์ข์๋ค. ํ๋ณตํ๋ค. ์๋นํ ์์พํ๋ค
-
๋ณํฌ
๊ต์ฅํ ์์พํ๋ค. ์ฃผ๋ง์ ๋ง์ด์ค๋๋ฐ ์ด์ ์กฐ๊ธ์์ ์คํ๋ ค ์ข๋ค. ์๋ง๊ฐ ์ธ์ค ๋ก์คํฐ๋ ์นํจ ์ค ํ๋๋จธ์คํ๋ ์๋์์น๋ฅผ ๋จน๊ณ ๊ธฐ๋ถ์ด ์ข์์ก๋ค.
-
ํ์
์ปจ๋์ ์ ์ ๋ง ์ข๋ค. ์ค๋ ๋ฐ๋ค๋ฅผ ๊ฐ ์ ์์ด์ ํ๋ณตํ๋ค. ๋ณํฌ๋์ด ์๋ฒฝ 3์๊น์ง ์์ ํ ๊ฑธ ๋ณด๊ณ ํ๋ณตํ๋ค
-
์ฉํ ์ปจ๋์ ์ ๋ง์ด ์์ ์ข๋ค. ์ด์ ํ ์๊ฐ์ ํ๋ณตํ๋ค(ํ๋ค ๋ค๋ฆฌ ํจ๊ณผ)
- event ํจ์ ์ด๋ฆ โ emitEvent๋ก ํต์ผ, ๋ถ์คํธ ์์น activity๋ fragment ๋ถ๋ถ ๋ก์ง ์ฐธ๊ณ
- ๋ทฐ๋ชจ๋ธ์์์ ๋คํธ์ํฌ ์ํ ๋ชจ๋ ์ฃผ์ ๋ฐ๊ณ open var ํ์ ์ผ๋ก ๊ฐ์ง๊ณ ์์ผ๋ฉด ๋จ. ์ดํ์ ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์ผ๋ก ์ฌ์ฉํ๋ฉด ๋จ. โ ๊ฐ๋ฐ์ผ์ง์ ์ฌ์ฉ๋ฒ ์ฐธ๊ณ
- repeatWhenUiStarted๋ก ์์
- sealed class์์ ๋ฐ์ดํฐ๊ฐ ์์ผ๋ฉด object ํํ๋ก ๋ง์ด๋ค ์ฐ๋๋ผ~
- boradcast receiver ๊ด๋ จ IntentFilter์์ ์ด๋ค ์ ๋ณด๋ฅผ ๋ฆฌ์๋ธ ๋ฐ์์ง ๊ฒฐ์
- init ๋ธ๋ญ ์ญ์
- initView() โ onViewCreated()์์ ์คํ, ์ฌ๊ธฐ์ repeatWhenUiStarted ์ฌ์ฉํ์ฌ collect
- Fragment์์ ํด๋น ์์กด์ฑ์ด ์๋ ๋ก์ง์ ViewModel, UseCase๋ก ๋ก์ง์ ๋ถ๋ฆฌ(์นดํ ๊ณ ๋ฆฌ ๊ด๋ จ)
- repeatOn โ repeatWhen์ผ๋ก ๋ค์ด๋ฐ ๋ณ๊ฒฝ
- SignIn ๋ชจ๋์์ ์ฌ์ฉํ๋ User ๋ชจ๋ธ ์ด๋ฆ ๋ณ๊ฒฝ(Presentation ๋ชจ๋๊ณผ ์๋ก ์๊ธฐ ๋๋ฌธ์ ํท๊ฐ๋ฆด ์ ์์.)
- SignInDataSourceImpl.kt
- ๋น๋ฌธ์์ด ์์ ๊ฐ์ผ๋ก ์ฒ๋ฆฌ
- uid๊ฐ null ๊ฐ์ด๋ฉด exception ๋ฐ์์์ผ์ผ ํจ -> runcatching์ผ๋ก Result ๋ฐํ -> ui์์ ํ์ธํ ๋ฉ์์ง ๋์ฐ๊ธฐ
DAY 3 - 2022/11/23
## ์ํํ ์ปจ๋์ -
์น๋ฏผ
์ปจ๋์ ์ ์ผ๋จ ๋๋ฌด ์ข๋ค. ๊ฟ์ ์ค๋ค. ์์นจ๋ถํฐ ๋์ด๊ณต์ ํ ๋ง ์์ ์ ๋ค์ผ๋ ๋์ด๊ณต์์ ์จ๋ฏํ ๊ธฐ๋ถ์ด ๋ค์ด ๋๋ฌด ํ๋ณตํฉ๋๋ค.
-
๋ณํฌ
์ปจ๋์ ์ข๋ค. ์์ฌ์์ฌํ๊ฒ ์ง๊ฐ ์ํด์ ๊ธฐ๋ถ์ด ์ข์ต๋๋ค.
-
ํ์
8์๊ฐ ๋ฐ์ ์์ ์ปจ๋์ ์ข์. ๋ชธ์ ํ๋ณตํ๋ค. ํ์๊ฐ ์ผ์ฐ ์ผ์ด๋๋ ค ํ๋๋ฐ ๊ทธ๋ฌ์ง ๋ชปํด์ ์ ์ ์ ๋ถํํ๋ค. ์ฌ๋ฌ๋ถ๋ค๊ณผ ๋ฐ๋ค๋ฅผ ๋๋ฌ ๊ฐ ์ ์์ด์ ํ๋ณตํ์ต๋๋ค.
-
์ฉํ
์ ๋ ๋ง์ด ์ ์ ์์ด์ ์ปจ๋์ ์ด ์ข๋ค. ๋ฆ์ ์ ์ ์์ด์ ํ๋ณตํ์ต๋๋ค.