-
ํ๋ฉด ๋ณํ ๋ฒํผ ๊ตฌํ ์๋ฃ
-
GeometryReader์ ์ฌ์ฉํด ๋ทฐ์ ํฌ๊ธฐ๋ฅผ ์์์ button์ layout์ ์ก์์ค
-
tabbar top line ๊ทธ๋ ค์ฃผ๋ ์ฝ๋
-
back button์ ๋๋ ์ ๋ appview๋ก ๋ค์ ๋์๊ฐ๊ฒ ๊ตฌํํจ
-
์์ง button์ layout์ด ๋ง์ถฐ์ง์ง๋ ์์์(์์ ์์ )
-
code ๋ฆฌ๋ทฐ ๋ฐ์ ํ code ๋ฆฌํฉํ ๋ฆฌ์ค์ ๋๋ค.
-
- navigationbar๊ฐ hidden๋์ง ์์ ๋ฒํผ์ด ์๋ก ์ฌ๋ผ๊ฐ๋ ํ์์ ํด๊ฒฐํ์ต๋๋ค.
- swiftui ์ค๋ฅ์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ์ผ๋ hiidenํด๋ ์ฌ๋ผ์ง์ง ์๋ ์ค๋ฅ๊ฐ ์์์ต๋๋ค.
- ํด๊ฒฐ๋ฒ: MoSonLee/SwiftUI#3 (comment)
- swiftui ์ค๋ฅ์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ์ผ๋ hiidenํด๋ ์ฌ๋ผ์ง์ง ์๋ ์ค๋ฅ๊ฐ ์์์ต๋๋ค.
- navigationbar๊ฐ hidden๋์ง ์์ ๋ฒํผ์ด ์๋ก ์ฌ๋ผ๊ฐ๋ ํ์์ ํด๊ฒฐํ์ต๋๋ค.
-
1์ฐจ task ์๋ฃ
- mainTab์ ๋ง๋ค์ด์ค์ ๊ทธ ์์ home, record, storage์ view์ core๋ฅผ pullback ์์ผ ๊ตฌํ
- recordView๋ก ์ด๋์ํด MoSonLee/SwiftUI#2 (comment)
- back button์ด ๋๋ ธ์ ๋ ์ด์ ํ๋ฉด์ผ๋ก ์ด๋ MoSonLee/SwiftUI#4 (comment)
- ๋ฏธ๋ฆฌ ๋ชจ๋๋ก ๋ง๋ค์ด์ค navigationbar์ ์ฌ์ฉํด์ค.
- mainTab์ ๋ง๋ค์ด์ค์ ๊ทธ ์์ home, record, storage์ view์ core๋ฅผ pullback ์์ผ ๊ตฌํ
-
2์ฐจ task ์๋ฃ
- ๋ณด๊ดํจ ์ค์ ์์ด์ฝ์ SettingView์ Core์ฐ๊ฒฐํ๊ธฐ
- ๋ณด๊ดํจ ์ค์ ์์ด์ฝ์ SettingView์ Core์ฐ๊ฒฐํ๊ธฐ
-
3์ฐจ task ์๋ฃ
- storageView๋ฅผ ๋๋ ์ ๋ loginํ๋ผ๋ alert ๋์์ฃผ๊ธฐ
- storageView๋ฅผ ๋๋ ์ ๋ loginํ๋ผ๋ alert ๋์์ฃผ๊ธฐ
-
4์ฐจ task ์๋ฃ
- model ํ์
์ง์
- model ํ์
์ง์
-
5์ฐจ task ์๋ฃ
- ๊ธฐ๋กํ๊ธฐ ์ฒซํ๋ฉด ๋ทฐ and core ์์ฑ
- button์ tabํ์์ datePicker ๋์์ฃผ๊ธฐ
- navigationLink๋ฅผ ์ฌ์ฉํ๋๊ฑด ์ด๋จ๊น? -> ์๋์ค -> ๊ฐ์๋ฆฌ์๋ค
- navigationLink๋ฅผ ์ฌ์ฉํ๋๊ฑด ์ด๋จ๊น? -> ์๋์ค -> ๊ฐ์๋ฆฌ์๋ค
- ๊ธ์ ์ ์ ํ ํจ์ ๋ง๋ค์ด์ฃผ๊ธฐ -> ํด๊ฒฐ์๋ฃ
- autoLayout ๋ง์ถฐ์ฃผ๊ธฐ(swiftui๋ก ๋ง์ถฐ๋๊ฑฐ์ ์ ๋ก์ฌํญ์ด ์๋ค ใ
ใ
)
- ๊ธฐ๋กํ๊ธฐ ์ฒซํ๋ฉด ๋ทฐ and core ์์ฑ
-
6์ฐจ task ์๋ฃ
- settingView and settingcore ๊ตฌํํ๊ธฐ
- layout ์ ๋ฉด ์์ ์๋ฃ.
- ๋ง๋ ์ฌ๋๋ค view + ๋ก๊ทธ์์, ํ์ํํด logic ๊ตฌํ ๋จ์
- UserDefaults -> sharedState ์ด์ฉ์ผ๋ก ๋ณ๊ฒฝ์ค
- ์๋ฃ
- ์๋ฃ
- ์ฝ๋ ์ ๋ฐ์ ๋ฆฌํฉํ ๋ง์ค์
๋๋ค.
- ์๋ฃ
- settingView and settingcore ๊ตฌํํ๊ธฐ
-
7์ฐจ task
- ๋ก๊ทธ์ธ ๋ทฐ refactoring
- ๋ฌธ์ ์ : ์ด๋ฏธ์ง์ ์๋ณธ ๋น์จ์ ํญ๋ทฐ์์์ ์ ์งํด์ฃผ๋ฉด์ ๋ค๋ฅธ text๋ค์ ์ํฅ์ ์ ๊ฐ๊ฒ ํ๋๋ฒ์ด ์์๊น?
- ์๋ค. ํจ๋ฉ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ก์์ค๋ค -> ์ด๋ฏธ์ง ๋น์จ์ด ๊บ ์ง
- ์ด๋ฏธ์ง ์๋ณธ ๋น์จ ์ ์ง -> ๋ ์ด์์์ด ๋ฐ๋๋๊ฑด ๋น์ฐํ ์ผ(๋์์ธ ํ์์ ๊ทธ๊ฑธ ๊ณ ๋ คํด์ ์ด๋ฏธ์ง๋ฅผ ์ฃผ์ง ์์์)
- ์ด๋ฏธ์ง์ ์๋ณธ ๋น์จ์ ์ ์งํ๋ ๊ฒ 1์์ -> ๋ฐ๋ผ์ ๊ฐ ๋ค๋ฅธ ๋๋ฐ์ด์ค๋ณ๋ก ํจ๋ฉ์ด ๋ฌ๋ผ์ง ์ ์๋๊ฑธ ๊ฐ์ํ๊ณ ์ก์์ค์ผํจ
- ์๋ค. ํจ๋ฉ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ก์์ค๋ค -> ์ด๋ฏธ์ง ๋น์จ์ด ๊บ ์ง
- ์นด์นด์ค, ์ ํ ๋ก๊ทธ์ธ ๋ฒํผ๋ฅผ ํจ๋ฉ์ผ๋ก ๋ ์ด์์์ ์ก์์คฌ์ ๋ ์๊ธฐ๋ ๋ฌธ์
- ๋์์ธ ํ์์ ์ค ์ด๋ฏธ์ง๋ก ์๊ฐํด ๋ณด๋ฉด ํฐ ๊ธฐ๊ธฐ์์ ๋ฒํผ ์ด๋ฏธ์ง๊ฐ ๋์ด๋๋ฉฐ ์์ ์๋ ํ
์คํธ๊ฐ ๋์ด๋ ๋ณด์ด๋๊ฑด ๋น์ฐํจ
- ๋์์ธ ํ์์ ์ค ์ด๋ฏธ์ง๋ก ์๊ฐํด ๋ณด๋ฉด ํฐ ๊ธฐ๊ธฐ์์ ๋ฒํผ ์ด๋ฏธ์ง๊ฐ ๋์ด๋๋ฉฐ ์์ ์๋ ํ
์คํธ๊ฐ ๋์ด๋ ๋ณด์ด๋๊ฑด ๋น์ฐํจ
- ๋ก๊ทธ์ธ ๋ทฐ refactoring
-
8์ฐจ task(์ต์ข )
- mock๋ฐ์ดํฐ๋ก ๋ฃ์ด๋์ ๊ฐ๋ค api ํต์ ์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ธฐ -> ์๋ฃ
- mock๋ฐ์ดํฐ๋ก ๋ฃ์ด๋์ ๊ฐ๋ค api ํต์ ์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ธฐ -> ์๋ฃ
-
6/23 ์ต์ข ํ ์คํธ -> 6/24 1์ฐจ ์ฌ์ฌ
- ๋ก๊ทธ์ธ์ด ๋์ง ์์์ ๋
- ๋ก๊ทธ์ธ ์๋ฃ์
- ๊ตฌํํ ์ฝ๋: ๊ธฐ๋ณธ tabView์์ ํ๋ฉด ์ ํํด์ฃผ๋ ์ฝ๋, back button์ ๋๋ ์ ๋ ํ๋ฉด ๋ค๋ก ์ด๋์ํค๋ action, recordButton์ ๋๋ ์ ๋ navigationLink๋ฅผ ์ฌ์ฉํด ํ๋ฉด ์ ํ ์ฝ๋, model type ์ง์
- ๋ฉ์ธ ์ฝ๋๋์ code review, refactoring, ํ์ด ์ฝ๋ฉ์ผ๋ก ์ง์ ์ต๋ํ๋ฉฐ ๋์์ ๋ฐ์ ๊ตฌํํ๊ณ ์์๋๋ค.!
- ๋ฉ์ธ ์ฝ๋๋์ code review, refactoring, ํ์ด ์ฝ๋ฉ์ผ๋ก ์ง์ ์ต๋ํ๋ฉฐ ๋์์ ๋ฐ์ ๊ตฌํํ๊ณ ์์๋๋ค.!
- ํ์ ๋ก๊ทธ์์, ํํด, makersView ๋นผ๊ณ ๋ชจ๋ ๊ตฌํ ์๋ฃ
- ๋ก๊ทธ์์ ๊ตฌํ์๋ฃ(์นด์นด์ค, ์ ํ)
- ์๋ฒ ์ค๋ฅ๋ก ํํด ํ์ธ ๋ถ๊ฐ๋ฅํ ์ํ
- ๋ก๊ทธ์์ ๊ตฌํ์๋ฃ(์นด์นด์ค, ์ ํ)
- pop to root view์์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์ -> uikit func๋ฅผ ๊ฐ์ ธ์์ ์ฌ์ฉ + maintab์ selection์ home์ผ๋ก ๋ฐ๊ฟ์ค -> ํด๊ฒฐ ์๋ฃ
- makers view ๊ตฌํ ์๋ฃ
- ๊ธฐ๋กํ๊ธฐ, ๊ฒ์ํ๊ธฐ ๋ทฐ๋ง ๋จ์ ์ํ
- ํ์ํํด๊ฐ ์ ๋๋ก ์คํ๋์ง ์์ -> ํ์ธ๊ฒฐ๊ณผ ์๋ฒ๋ ์ด์ ์์ sharedState์ userID๋ฅผ ์ง์์ง๋ ๋ก์ง์ ์์ ๋ฌธ์ ์ธ๋ฏํจ
- ํด๊ฒฐ ์๋ฃ
- ๊ธฐ๋กํ๊ธฐ, ๊ฒ์ํ๊ธฐ์ ์ฐ๊ด api๋ ์ฐ๊ฒฐํด์ฃผ์ง ๋ชปํ ์ํ
- ์ ์ ๊ฟ ์์ฑ api forkey๋ฅผ String -> Array๋ก ์์ ์์ฒญํ ์ํ -> ์๋ฃ
- testCode ์์ฑ์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์
- Diary delete, set ๋ก์ง ์ฐ๊ฒฐ ์๋ฃ
- onAppear ํ ๋ diarycount๋ฅผ ์งํํ๋ฉด set ๋๋ ์๋ ๋ณด๋ค ๋๋ ค 0์ผ๋ก ์ถ๋ ฅ๋๋ ๋ฌธ์ ๋ฐ์ -> set ์ํค๋ฉด์ ๊ฐ์ด count๋ฅผ ํด์ค์ ๋ฌธ์ ํด๊ฒฐ(delete ํ ๋๋ ๋ง์ฐฌ๊ฐ์ง)
- ์ต์ข
task๋ง ๋จ์ ์ํ
- 6/25 ์ฌ์ฌ ์์
- ๊ฒ์ํ๊ธฐ ๋ณ๊ฒฝ๋ ํ๋ก์ฐ๋ก ๋์ ์๋ฃ(์๋ฒ์์ ๋ณ๊ฒฝ์ ์ด๋ผ ํ
์คํธ๋ ๋ถ๊ฐํ ์ํ)
- ํด๋ผ ์ต์ข
๋์ ๋!
- Tca) ์ํคํ
์ณ๋ก ํ๋ฉด ๊ตฌํ์ ๋ค๋ฅธ ๋ทฐ๋ฅผ ๋ถ๋ฌ์ฌ ๋ ๋ํ๋๋ ์ค๋ฅ
- TCA button์ ๋๋ฌ View ์ ํ์ํค๊ธฐ
- SwiftUI) navigationbar์ hidden ํด๋ ์ฌ๋ผ์ง์ง ์์ ๋
- TCA) BackButton์ ๋๋ ์ ๋ ์ด์ ํ๋ฉด์ผ๋ก ๋์๊ฐ๊ฒ ๊ตฌํ
- TCA) optional ํํ์ state๋ฅผ ๋ฐ์์ฌ๋ ์๊ธฐ๋ ๋ฌธ์
- Combine) API๋ฅผ ์ฐ๊ฒฐํด Diary๋ฅผ ๋ฐ์์ฌ ๋ ๋ ๋ฐ์ํ ๋คํธ์ํฌ ์ค๋ฅ)
- TCA_ Diary๊ฐ ์ ๋๋ก Count ๋์ง ์๋ ์ค๋ฅ
- TCA + Combine) Mongsil ๋ก๊ทธ์ธ ๊ด๋ จ ์ด์
- ๋ชฝ์ค ํ์ ๊ฐ์
ํ ์๋น์ค ์ด์ฉ์ด ๋ถ๊ฐํ ์ค๋ฅ
- composable architecture์ ๋ค์ฏ๊ฐ์ง ํ์ ํ์
- State: business logic์ ์ํํ๊ฑฐ๋ UI๋ฅผ ๊ทธ๋ฆด ๋ ํ์ํ ๋ฐ์ดํฐ์ ๋ํ ์ค๋ช
์ ๋ํ๋ด๋ ํ์
- Action: user๊ฐ ํ๋ ํ๋์ด๋ notification ๋ฑ ์ฑ์์ ์๊ธธ ์ ์๋ ๋ชจ๋ ํ๋์ ๋ํ๋
- Environment: API client์ ๊ฐ์ด ์ฑ์ด ํ์๋ก ํ๋ ์์กด์ฑ(dependancy)์ ๊ฐ์ง๊ณ ์๋ ํ์
- Reducer: ์ด๋ค action์ด ์ฃผ์ด์ก์ ๋ ์ง๊ธ state๋ฅผ ๋ค์ ์ํ๋ก ๋ณํ์ํค๋ ๋ฐฉ๋ฒ์ ๊ฐ์ง๊ณ ์๋ ํจ์. ๋ํ reducer๋ ์คํํ ์ ์๋ effect๋ฅผ ๋ฐํํด์ผ ํ๋ค. ๋ณดํต Effect ๊ฐ์ ๋ฐํํด์ค๋ค.
- Store: ์ค์ ๋ก ๊ธฐ๋ฅ์ด ์๋ํ๋ ๊ณต๊ฐ. ์ฌ์ฉ์์ Action์ ๋ณด๋ด Store๋ Reducer์ Effect๋ฅผ ์คํํ ์ ์๋ค. ๋ํ store์์ ์ผ์ด๋๋ state ๋ณํ๋ฅผ observeํด์ ui๋ฅผ ์
๋ฐ์ดํธํ ์ ์๋ค.
- State: business logic์ ์ํํ๊ฑฐ๋ UI๋ฅผ ๊ทธ๋ฆด ๋ ํ์ํ ๋ฐ์ดํฐ์ ๋ํ ์ค๋ช
์ ๋ํ๋ด๋ ํ์
- ๋น๋๊ธฐ์ฒ๋ฆฌ๋ฅผ ๊ฑฐ์น๋ค. State, Action, reducer(pullback์ผ๋ก ๋ค๋ฅธ ํด๋์ค๋ฅผ ์์๋ฐ์ ์ฌ ์ ์์)