#1 ๊ฐ๋ฐ ๋ชฉํ (Iteration Goal)
#1-1 ์ด์(Ideal)๊ณผ ์ง๊ฒ๋ค๋ฆฌ
Iteration 6: MVP 1 ๊ตฌํ (3/3)
Iteration 5์์ ํ๋ฉด(UI)๋ฅผ ์ฝ๊ฐ ๋ค๋ฌ๊ณ , ๋ด๋ถ ์ฝ๋์ ๊ฐ๋ ์ฑ์ ์๋ดค๋ค.
#1-2 ๊ฐ๋ฐ ๋ฒ์
์ด๋ฒ ๊ฐ๋ฐ ๋ฒ์ (In Scope)
- UI ๋ค๋ฌ๊ธฐ
- ์ฝ๋ ๊ฐ๋ ์ฑ ํฅ์
๋ฒ์ ์ธ (Out of Scope)
- ๊ธฐ๋ฅ ์ถ๊ฐใ์์ ใ์ญ์
#2 ๋ณ๊ฒฝ ๋ด์ญ (์ปค๋ฐ ๋ชฉ๋ก)
#2-1 Iteration 6-1: UI ๋ค๋ฌ๊ธฐ
์ฃผ์ ๋ณ๊ฒฝ์
- Preview๊ฐ ๋๋ฝ๋ ์ปดํฌ๋ํธ์ Preview ์ถ๊ฐ
- memo ๋ชจ๋ ์ ์ฉ ์ปดํฌ๋ํธ์ internal ์ ๊ทผ์ ์ด์ ๋ถ์
- MemoFeed์ LazyColumn์ bottom padding์ ์ค์, FAB๊ฐ Memo๋ฅผ ๊ฐ๋ฆฌ์ง ์๊ฒ ํจ
์คํฌ๋ฆฐ์ท
![]() |
![]() |
์ฌ์ฉ์๊ฐ ์คํฌ๋กค์ ๋๊น์ง ๋ด๋ ธ์ ๋, FAB๋ฅผ ์ํ ๊ณต๊ฐ์ด ์๊ฒผ๋ค.
์ฝ๋ ์ค๋ํซ
@Composable
internal fun MemoFeed(
memos: List<Memo>,
modifier: Modifier = Modifier,
onMemoClick: (Memo) -> Unit = {},
onMemoLongClick: (Long) -> Unit = {},
) {
LazyColumn(
...
contentPadding = PaddingValues(bottom = 80.dp)
) {
items(
...
) { memo ->
...
}
}
}
"์ 80.dp ๊ฐ์ ์ ์ ๊ณ์ฐ์ด ์๋ ๋์ ๊ณ์ฐ์ผ๋ก ์ฆ, ์ํํธ์ฝ๋ฉ์ผ๋ก ํด๊ฒฐํด์ผํ๋?"๋ผ๊ณ ์๊ฐํ๋ค. ํ์ง๋ง, ๋ ์ฐ์ํ ์ฝ๋๊ฐ ๋์จ๋ค๋ ์ ์ธ์๋ ๊ทธ๋ ๊ฒ ํ ์ด์ ๊ฐ ์์๋ค.
์ฐธ๊ณ
#2-2 Iteration 6-2: MemoViewModel์ ์ด๋ฒคํธ ๊ฐ์
์ฃผ์ ๋ณ๊ฒฝ์
- MemoViewModel์ ์ด๋ฒคํธ๋ฅผ ๋ณด๊ธฐ ์ข๊ฒ ์ ๋ ฌํ๊ณ ์ฃผ์ ์ถ๊ฐ, MemoScreen๊ณผ MemoScreen์ ํ์ ์ปดํฌ๋ํธ์์๋ MemoViewModel์์์ ์ด๋ฒคํธ ์์๋ฅผ ๊ทธ๋๋ก ๋ฐ๋ฅด๊ฒ ๋ค๋ฌ์
- ์ธ์๋ฅผ ๋ฐ์ง ์๋ ์ผ๋ถ ์ด๋ฒคํธ๋ค์ด ์ธ์๋ฅผ ๋ฐ๊ฒ ์ค์ (์ฌ์ฌ์ฉ์ฑ↑)
- MemoViewModel์ ์ ์ํ ์ด๋ฒคํธ๋ฅผ ์ฌ์ฉํ๋ MemoScreen์ ์ฝ๋ ๊ฐ๋ ์ฑ ๊ฐ์
์ฐธ๊ณ
#3 ๊ฐ๋ฐ ๊ฒฐ๊ณผ (Iteration Outcome)
์ด์ฐ ๋์๋ , ์ผ๋จ ์ธ ์๋ ์๋ ์ฑ์ ๋ง๋ค์๋ค. ์ด์ ์ด๊ฑธ ์ง์ ์ฌ์ฉํด ๋ณด๋ฉฐ ๋น ๋ฅด๊ฒ ๊ณ ๋ํํ๊ฒ ๋ค. ๊ทธ๋ ๋ค๊ณ ๋๋ฌด ๊ฑฐ์ฐฝํ ๊ฑธ ๊ตฌํํ์ง ์์ ๊ฒ์ด๋ค.
๋, ์ดํ๋ถํฐ ์์ผ๋ก ์ง์ ํ๋ ์ฝ๋ฉ์ ๋ํญ ์ค์ผ ๊ฒ์ด๋ค. ๋จ์ํ ์๋์ ์ถ์ธ๋ฅผ ์ซ๊ธฐ ์ํจ์ด๋ค. ํ์ง๋ง ๋ณธ์ง์ ๋ณํ์ง ์๋๋ค. ๊ฐ๋ฐ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์ฌ๋์ด๋๊น. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ '์ฒ'ํ์ง ์์ผ๋ ค๋ฉด, "์?"๋ผ๋ ์ง๋ฌธ์ ๋ ผ๋ฆฌ์ ์ฐ์ด ๋๋ตํ ์ ์์ด์ผ๊ฒ ์ง. ๊ธฐ๋ณธ์ผ๋ก ๋์๊ฐ์.
'๊ฐ๋ฐ ์ผ์ง ๐ป > Swemo' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Swemo - Iteration 5: MVP 1 ๊ตฌํ (2/3) (0) | 2026.04.21 |
|---|---|
| Swemo - Iteration 4: MVP 1 ๊ตฌํ (1/3) (0) | 2026.04.01 |
| Swemo - Iteration 3: ๋ฉ๋ชจ ํ๋ฉด์ State & Event ์ฒด๊ณ ์ ๋ฆฌ (0) | 2026.02.08 |
| Swemo - Iteration 2: UI ๋์์ธ ๋ฐฉํฅ ํ์(Exploration) (0) | 2026.01.13 |
| Swemo - Iteration 1: ๋ฉ๋ชจ ์ฑ์ ์ฒญ์ฌ์ง(๊ธฐ์ด) (0) | 2025.12.28 |

