์ ์ฒด ๊ธ
-
New access modifier - packageSwift 2024. 3. 4. 19:08
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ Swift 5.9์์ ์๋ก ๋์จ ์ ๊ทผ ์ ์ด์์ธ package์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค ๐๐ป ๋์จ ๋ฐฐ๊ฒฝ ์๋ ๊ธฐ์กด์ ์ ๊ทผ์ ์ด์๋ผ๊ณ ํ๋ฉด ํํ ์๊ณ ์๋ 5๊ฐ์ง๊ฐ ์์ฃ ! open, public, internal, fileprivate, private ๋ง์ฝ ์ฌ๋ฌ๋ถ๋ค์ด ๋ชจ๋ํ๋ฅผ ์ํค๊ณ ๋ค๋ฅธ ๋ชจ๋ ํจํค์ง์ ์ฝ๋๋ฅผ ๊ฐ์ ธ์ ์ฌ์ฉํ๋ค๊ณ ๊ฐ์ ํ ๋, ๋๋ถ๋ถ public์ผ๋ก ์์ ํ์๊ฒ๋๋ค. ์ ๋ ๋ฌผ๋ก ๊ทธ๋ ๊ตฌ์..! ์ฌ๊ธฐ์ public์ผ๋ก ์์ ํ๊ฒ๋๋ฉด, ํจํค์ง ๋ด๋ถ์ ์ธ๋ถ ๋ชจ๋์์ ์ ๊ทผํ ์ ์๊ฒ ๋ฉ๋๋ค. ์ด ๊ฒฝ์ฐ๋ ํธ๋ฆฌํ๊ธด ํ์ง๋ง, ๋ฐ๋์งํ์ง ์์๋๋ ์์ต๋๋ค ๐ฅฒ ํจํค์ง ์ธ๋ถ์ ์ฝ๋๋ฅผ ๊ณต์ ํ์ง ์๊ณ ํจํค์ง ๋ด์ ๋ชจ๋ ๊ฐ์ ์ฝ๋๋ฅผ ๊ณต์ ํ์ฌ์ผ ํ๋ ๊ฒฝ์ฐ๋ ์์ผ๋๊น ๋ง์ด์ฃ ! ๊ทธ๋ ๊ธฐ์, ์ด..
-
TCA 1.0 - Testable Code (ch.09)TCA 2024. 3. 2. 10:14
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ TCA์ Testable Code์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐๐ป ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 9. TCA์ Testable Code | Notion 9.1 ์ ๋ ํ ์คํธ axiomatic-fuschia-666.notion.site ๊ทธ๋ผ ์์ํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป ์ ๋ ํ ์คํธ TCA๋ฅผ ํ์ตํ๋ฉฐ ๋ํ๋์์ ๋ํด ํ๊ณ ๋ค์ด๋ดค๋ ์ด์ ์ค ํ๋๋ ์์กด์ฑ๋ค์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํจ ์ฆ, ์์กด์ฑ์ ๋์ผ์ฑ์ ๋ฐฉํดํ์ง ์๊ณ ์์ ํ ์ฌ์ฉํ๊ธฐ ์ํ ๋ชฉ์ TCA๋ ์ก์ ๋จ์๋ก ๋ง๋ค๊ธฐ์ ํ ์คํธ์ ์ฉ์ดํ๋ฉฐ ์์กด์ฑ..
-
TCA 1.0 - Navigation (ch.08)TCA 2024. 2. 27. 19:10
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ TCA์ Navigation์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐๐ป ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 8. Navigation | Notion 8.1 Navigation์ด๋? axiomatic-fuschia-666.notion.site Navigation์ด๋? ๊ธ์์ SwiftUI์ sheet์ fullScreenCover๋ ๋ค๋น๊ฒ์ด์ ์ผ๋ก ๋ณผ ์ ์๋ฐ๋๋ฐ, ๋ฐฉ์ ์์ฒด๋ ํด๋น ๋๊ฐ๋ ๋ชจ๋ฌ ๋ฐฉ์์ด๊ณ ํํ ๋ค๋น๊ฒ์ด์ ๋ฐฉ์์ ํ๋ฉด ํ๋ฆ ์์ฒด๊ฐ ์ ํ๋์ด ๋์ด๊ฐ๊ธฐ์ ์กฐ๊ธ ๋ค๋ฅด์ง ์๋ ๊ฐ์ธ์ ์ผ๋ก ์๊ฐ๋จ ํด๋น..
-
TCA 1.0 - MultiStore (ch.07)TCA 2024. 2. 22. 19:10
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ TCA์ MultiStore์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐๐ป ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 7. MultiStore | Notion ์ฌ๊ธฐ๊น์ง ์ค์ จ๋ค๋ฉด ์ด์ ์ฌ๋ฌ๋ถ๋ค์ Reducer๋ฅผ ํตํด Store๋ฅผ ์์ฑํด View์ ์ถ๋ ฅํ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ ์ตํ์ ๊ฒ๋๋ค. ํ์ง๋ง ์ด์ ๋ณด๋ค ์ฑ์ด ๋ณต์กํด์ง๊ณ ๊ท๋ชจ๊ฐ ์ปค์ง๋ค๋ฉด ํ๋์ Reducer์์ ์ํ๊ด๋ฆฌ๋ฅผ ํ axiomatic-fuschia-666.notion.site ๊ทธ๋ผ ์์ํ๊ฒ ์ต๋๋ค ๐ MultiStore ์ง๊ธ๊น์ง์ ํ์ต์ ํตํด Reducer๋ก St..
-
TCA 1.0 - Swift์ ๋น๋๊ธฐ ์ฒ๋ฆฌ์ TCA์์์ ์์ฉ (ch.06)TCA 2024. 2. 20. 19:03
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ Swift์ ๋น๋๊ธฐ ์ฒ๋ฆฌ์ TCA์์์ ์์ฉ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐๐ป ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 6. Swift์ ๋น๋๊ธฐ ์ฒ๋ฆฌ์ TCA์์์ ์์ฉ | Notion ์ด๋ฒ ์ฅ์์๋ TCA์์์ ๋น๋๊ธฐ ์ฒ๋ฆฌ๋ฅผ ์ด๋ป๊ฒ ๊ด๋ฆฌํ๋์ง ์์๋ณด๊ธฐ ์ ์ Swift Concurrency, ์ฆ ๋์์ฑ ํ๋ก๊ทธ๋๋ฐ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค. Combine ํ๋ ์์ํฌ์ ๋ฌ๋ฆฌ ๋์์ฑ ํ๋ก๊ทธ๋๋ฐ์ Task์ ๋ณ axiomatic-fuschia-666.notion.site ๊ทธ๋ผ ๋ฐ๋ก ์์๋ณด์์ฃ ! TCA์ ๋น๋..
-
TCA 1.0 - Dependency (ch.05)TCA 2024. 2. 15. 19:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ TCA Dependency์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐๐ป ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 5. Dependency | Notion 5.1 TCA์ Dependency axiomatic-fuschia-666.notion.site ๋ํ๋์ ์์๋ณด์์ฃ ๐ Dependency TCA & Dependency Dependency๋ ํํ ์์กด์ฑ์ด๋ผ๋ ๋ป์ ๊ฐ์ง ๋คํธ์ํฌ ํต์ , ํ์ผ ์ก์ธ์ค, ํ์ด๋จธ ๋ฑ ์ฌ์ด๋ ์ดํํธ๋ฅผ ์ผ์ผํค๋ ์์๋ค์ ๋ชจ๋ Dependency๋ก ๋ณผ ์ ์์ TCA Dependenc..
-
TCA 1.0 - TCA Binding (ch.04)TCA 2024. 2. 12. 09:32
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ TCA์ ๊ธฐ๋ณธ๊ฐ๋ ๋ค์ ๋์ด ๋ ์ค์ํ ํํธ์ธ TCA Binding์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค ๐๐ป ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 4. TCA Binding | Notion 4.1 SwiftUI Binding VS TCA Binding axiomatic-fuschia-666.notion.site ๊ทธ๋ผ ๋ฐ๋ก ์์๋ณด์์ฃ ๐ TCA Binding SwiftUI Binding vs TCA Binding SwiftUI์์ @State, @Binding, @ObservedObject๋ค์ ํตํด ์..
-
TCA 1.0 - TCA์ ๊ธฐ๋ณธ ๊ฐ๋ (2) (ch.03)TCA 2024. 2. 8. 19:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์ ์ ๋ฒ TCA์ ๊ธฐ๋ณธ ๊ฐ๋ Part1์ ์ด์ด Part2๋ก ๊ธฐ๋ณธ ๊ฐ๋ ์ ๋ง๋ฌด๋ฆฌ ์ง์ด๋ณด๊ฒ ์ต๋๋ค. ํญ์ ํฌ์คํ ์์๋ ์๊ฐํ์ง๋ง, TCA 1.0 ์๋ฆฌ์ฆ ํ์ต์ ์๋ ํ์ต์๋ฃ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ ์์ต๋๋ค. ํด๋น ๋ ํผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ฉด์ ์ ๋๋ฆ๋๋ก ์ ๋ฆฌํด๋ณด๋ ํฌ์คํ ์ด๊ธฐ์, ์ฃผ๊ด์ ์ธ ์ฌ๊ฒฌ์ด ์ถ๊ฐ๋ฉ๋๋ค ๐๐ป Chapter 3. TCA์ ๊ธฐ๋ณธ๊ฐ๋ (2) | Notion ์์ ์ฅ์์ ์ฐ๋ฆฌ๋ ์ฑ์ ์ํ๋ฅผ ๋ํ๋ด๋ State์ ์ด๋ฅผ ๋ณ๊ฒฝํ ์๋จ์ธ Action, ๊ทธ Action์ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ณ ์ํ์ ๋ณ๊ฒฝ์ ์ฒ๋ฆฌํ๋ Reducer์ ์์๋ณด๋ฉฐ, TCA์์์ ๋ฐ์ดํฐํ๋ฆ์ ๋ํด์ ์ดํด๋ณด์์ต๋ axiomatic-fuschia-666.notion.site ๊ทธ๋ผ ์์ํด๋ณด์์ฃ ๐ TCA์ ๊ธฐ๋ณธ ๊ฐ๋ ..