Android(15)
-
Fragment์ ๋ํ์ฌ - (1/2)
์ค๋์ ๊ฐ๋ : Fragment - 1/2 ์๋์ ๋ด์ฉ๋ค์ ๊ตฌ๊ธ ๊ณต์๋ฌธ์๋ฅผ ๋ฐํ์ผ๋ก ์ ๋ฆฌํ ๊ฒ์ด๋ค๐ฑ๐ค ๋ฑ์ฅ ๋ฐฐ๊ฒฝ ๋ฐ ๋์์ธ ์ฒ ํ Android 3.0(API level 11)์ ์ฒ์์ผ๋ก ๋์ ํ๋ธ๋ฆฟ๊ณผ ๊ฐ์ ๋ํ ์คํฌ๋ฆฐ์์ ์ ์ฐํ UI๋ฅผ ์ง์ํ๊ธฐ ์ํด ์๋ ๊ทธ๋ฆผ์์์ ๊ฐ์ด ํ๋ธ๋ฆฟ์์๋ 2๊ฐ์ Fragment๋ฅผ ๋์์ ๋ณด์ฌ์ค ์ ์๊ณ , ๋ชจ๋ฐ์ผ์์๋ 1๊ฐ์ Fragment์ฉ ๋ณด์ Fragment๋ ๋ชจ๋์์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ๊ตฌ์กฐ๋ก ๋ง๋ค์ด์ผ ํจ => Fragment๋ ๋ ๋ฆฝ๋ ๋ชจ๋๋ก ์ฌ์ฌ์ฉ์ด ๊ฐ๋ฅ. ํ๋์ fragment์์ ๋ค๋ฅธ fraagment๋ฅผ ์ง์ ์กฐ์ํ๊ฒ ๋ง๋ค๋ฉด ์ ๋๋ค Fragment๋ ์ธ์ ์ฌ์ฉํ ์ ์์๊น? ํ๋ธ๋ฆฟ๊ณผ ๊ฐ์ ํฐ ํ๋ฉด์์ Tab layouts BottomBar Navigation Dialo..
2020.03.01 -
[Android] DI(์์กด์ฑ ์ฃผ์ )๊ณผ Koin์ ๋ํ์ฌ
#์ค๋์ ๊ฐ๋ : Koin DI ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋? ์์กด์ฑ ์ฃผ์ ์ ํ ๊ฐ์ฒด๊ฐ ๋ค๋ฅธ ๊ฐ์ฒด์ ์์กด์ฑ์ ์ ๊ณตํ๋ ๊ธฐ์ ์ ๋๋ค. "์์กด์ฑ"์ ์๋ฅผ ๋ค์ด ์๋น์ค๋ก ์ฌ์ฉํ ์ ์๋ ๊ฐ์ฒด์ ๋๋ค. ์ฌ์ฉํ ์๋น์ค๋ฅผ ์ง์ ํ๋ ํด๋ผ์ด์ธํธ ๋์ ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ฉํ ์๋น์ค๋ฅผ ์๋ ค์ค๋๋ค. -์ํค๋ฐฑ๊ณผ ์ฐ์ DI ๋? DI : Dependency Injection(์์กด์ฑ ์ฃผ์ )์ ์ค๋ง ์์กด์ฑ ์ฃผ์ ์ ์๋ฏธ๋ฅผ ์์๋ณด์. ์์กด์ฑ์ด๋, ๋๋ ์์กด์ฑ์ ๊ด๊ณ๋ฅผ ์๋์ ๊ฐ์ด ์ดํดํ๋ค. ์๋ฅผ ๋ค์ด, A์ B๊ฐ ์๋ค. ์ด๋ค action์ด ํํด์ ธ A์ ์ํฅ์ ๋ฏธ์ณค๋ค. A๊ฐ ์ํฅ์ ๋ฐ์๊ธฐ ๋๋ฌธ์ B๋ ์ํฅ์ ๋ฐ๋๋ค. ์ด๋ฌํ A-B์ ๊ด๊ณ๋ฅผ ์์กด์ฑ์ด ์๋ค๊ณ ๋ณธ๋ค. ์ฃผ์ ์ด๋, "๋ฐ์์ ์์ผ๋ก ๋ฃ๋๋ค"๋ผ๋ ์๋ฏธ๋ก ๋ณผ ์ ์๋ค. ์ฆ, ์ํํธ์จ์ด์์์ ์์กด์ฑ ์ฃผ์ ์ด๋..
2019.11.15 -
[Android]Android Architecture Pattern ์ ๋ํ์ฌ - (2) MVVM
#์ค๋์ ๊ฐ๋ : MVVM MVVM ํจํด์ด๋? Model(M) - View(V) - ViewModel(VM) View : UI. ์ฌ์ฉ์์๊ฒ ๋ณด์ด๋ ํ๋ฉด ๋ฐ ์ฌ์ฉ์์ ์ ๋ ฅ ๋ฑ ViewModel : View์์ ๋ฐ์ ์ฌ์ฉ์์ ์ก์ ์ ๋ํ business logic ์ฒ๋ฆฌ. (์ก์ ์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ Model์ ํตํด ์ ๋ฐ์ดํธํ๊ฑฐ๋) Model : ๋ฐ์ดํฐ ์ฒ๋ฆฌ ํน์ง 1. View - ViewModel์ ๊ด๊ณ ์์ ๊ทธ๋ฆผ 1์ ๋ณด๋ฉด, ViewModel์ View์ ์กด์ฌ๋ฅผ ๋ชจ๋ฆ. ์ด๋ก์จ ํ๋ซํผ ์์กด์ฑ์์ ๋ฒ์ด๋ ์ ์๊ฒ ํด ์ค๋ค ViewModel์ ๊ณ์ํด์ ๋ฐ์ดํฐ๋ฅผ ๋ฐฉ์ถํ๋ฉด, View๋ ViewModel์ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ ๋ฃ๋ ๊ด๊ณ. ์) ๊ต์๋(ViewModel)์ ๊ฐ์ ์ค ๋ง์ ํ์(View)๋ค์ ๋์์ผ๋ก ๋ค์ํ ์ ๋ณด..
2019.10.08