์ฐ๋ฝ์ฒ์ ๊ฐค๋ฌ๋ฆฌ, ๋ ์จ ๊ธฐ๋ฅ์ด ์๋ ์ดํ๋ฆฌ์ผ์ด์
- ๊น์ค์ ๊ณ ๋ ค๋ํ๊ต ์ปดํจํฐํ๊ณผ 20ํ๋ฒ
- ์ด์๋ฏผ KAIST ์ ์ฐํ๋ถ 21ํ๋ฒ
- Android Studio
- Kotlin
- Android
- ์ ํฌ๋ ๊ตฌ๊ธ์ ๊ณต์์ ์ธ ์ง์์ ๋ฐ์ผ๋ฉฐ ์ง์์ ์ธ ์ฑ์ฅ๊ณผ ๊ฐ๋ฐ์ ๋ณด์ฅํ๋ ๋ฐ ๋์์ด ๋๋ ์๋๋ก์ด๋ ๊ฐ๋ฐ์ฉ ์ธ์ด์ธ Kotlin ๊ธฐ๋ฐ์ ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ์ ์งํํ์์ต๋๋ค. 'Navigation tab' ๋ ์ด์์์ ์ด์ฉํ์๊ณ ๊ฐ ํญ์ ๊ฐ๊ฐ์ 'Fragment', 'ViewModel', 'Adapter'๋ฅผ ํตํด ์ํ๋ ๋ด์ฉ์ ๊ตฌํํฉ๋๋ค.
ํ๋กํ, ์ด๋ฆ, ์ฐ๋ฝ์ฒ๋ฅผ ํ๋์ ๋ณผ ์ ์๋ ํญ
- RecyclerView ํํ๋ก ์ฌ์ง, ์ด๋ฆ, ์ ํ๋ฒํธ ๋ฐ ์ฆ๊ฒจ์ฐพ๊ธฐ ์์ด์ฝ ๋ณด์
- ์ฐ๋ฝ์ฒ ์๋จ์ ์ฐ๋ฝ์ฒ ๊ฐ์๋ฅผ ์๋ ค์ฃผ๋ Textview ์์น
- ์ฐ๋ฝ์ฒ ํด๋ฆญ ์ ์ฌ์ง, ์ด๋ฆ, ์ ํ๋ฒํธ๋ฅผ ๋ณผ ์ ์๋ ์์ธ์ ๋ณด Fragment๋ก ์ด๋
- ์์ธ์ ๋ณด Fragment์๋ ์ฐ๋ฝ์ฒ ์ญ์ , ์์ , ์ ํ ๋ฒํผ์ด ์๊ณ , ๊ฐ ๋ฒํผ์ ํด๋ฆญํ์ฌ ๊ฐ ๊ธฐ๋ฅ ์ํ ๊ฐ๋ฅ
- ์ฆ๊ฒจ์ฐพ๊ธฐ ํด๋ฆญ ์ ํด๋น ์์ดํ ์ด ๋ฆฌ์คํธ ์ต์๋จ์ผ๋ก ์ด๋
- ์ฆ๊ฒจ์ฐพ๊ธฐ ํด์ ์ ํด๋น ์์ดํ ์ด ๋ฆฌ์คํธ ์ตํ๋จ์ผ๋ก ์ด๋
- ์ฐ๋ฝ์ฒ ํ๋จ์ + ๋ฒํผ์ ํด๋ฆญํ์ฌ ์ฐ๋ฝ์ฒ ์ถ๊ฐํ๋ Fragment๋ก ์ด๋
- ์ฐ๋ฝ์ฒ ์ถ๊ฐ Fragment์๋ ์ด๋ฆ ๋ฐ ์ ํ๋ฒํธ๋ฅผ ๋ฐ์ ์ ์ฅ ๋ฒํผ์ ๋๋ฅด๋ฉด ์ฐ๋ฝ์ฒ์ ์ถ๊ฐ๋จ
์บ๋ฆญํฐ๋ค์ ์ฌ์ง๊ณผ ์ด๋ฆ์ด ๋ด๊ฒจ์ ธ ์๋ ํญ
- RecyclerView ํํ๋ก CardView๋ค๋ก ์ ๋ ฌ๋์ด ์์
- ์ฌ์ง ํด๋ฆญ ์ ์ด๋ฆ๊ณผ ์ฌ์ง ํ๋ ํ๋ฉด์ด ๋ณด์
- ๋ค๋ก ์ด๋ํ๋ BACK ๋ฒํผ์ด ์์
์ต์ ๋ ์จ ์ ๋ณด๋ฅผ ๋ถ๋ฌ์ค๋ ํญ
- Retrofit์ ํ์ฉํ์ฌ ๊ณต๊ณต๋ฐ์ดํฐํฌํธ์ ๋จ๊ธฐ์๋ณด API๋ฅผ ํธ์ถํ์ฌ ๋ ์จ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์์ data class๋ก ๊ตฌํ
- ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ์ฌ ๊ธฐ์จ, ํ๋ ์ํ, ๊ฐ์ ํํ, ์ต๋๋ฅผ ์ถ์ถํ์ฌ ๊ฐ ์๊ฐ๋๋ณ๋ก ๋ฐฐ์ด์ ์ ์ฅ
- ์ฝ๋ ํํ์ ์ ๋ณด๋ฅผ ๋ฌธ์์ด๋ก ๋ณํ
- ๊ณ ์ ๋ ์์น(๋์ ๊ด์ญ์ ์ ์ฑ๊ตฌ ์จ์ฒ2๋ฑ)์ ๋ ์จ ์ ๋ณด๋ฅผ ํ์
- RecylcerView๋ฅผ ์ด์ฉํ์ฌ ์ต์ 6์๊ฐ๋์์ ๋ ์จ ์๋ณด๋ฅผ ํ์
- ํ๋ ์ํ์ ๋ฐ๋ผ ๋ค๋ฅธ View๋ฅผ ๊ตฌํํ์ฌ ๋ ์จ๋ฅผ ์๊ฐ์ ์ผ๋ก๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋๋ก ํจ
- ์๋ก๊ณ ์นจ ๋ฒํผ์ ๋๋ฅด๋ฉด ํ์ฌ ์๊ฐ์ ๋ฐ์ดํฐ๋ก ๊ฐฑ์ ํ์ฌ ์ต์ ๋ ์จ ์ ๋ณด๋ฅผ ์ ๊ณต