์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Swfit
- SnapKit
- XCTest
- ๋ฐฑ์ค
- ํจ์คํธ์บ ํผ์ค
- raywenderlich
- Kuring
- visionOS
- reactorkit
- arkit
- BFS
- Flutter
- rxcocoa
- ํ๋ก๊ทธ๋๋จธ์ค
- BOJ
- Lv2
- CollectionView
- designpattern
- UIKit
- tableView
- Xcode
- RxSwift
- node.js
- ios
- realm
- SwiftUI
- TCA
- combine
- swift
- MVVM
- Today
- Total
๋ชฉ๋กMVVM (6)
lgvv98
[SwiftUI] keyboard ์ด๋ฒคํธ ํธ๋ค๋ง ์ฑ ๊ฐ๋ฐ์ ์์ด์ ํค๋ณด๋ ์ํ์ ๋ฐ๋ผ์ ๋ทฐ์ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ค์ ๋์ด๊ฐ ์กฐ์ ๋๋ ๋ฑ ํค๋ณด๋์ ๊ด๋ จํด์๋ ๊ฝค๋ ๊น๋ค๋กญ๋ค. UIKit์ ์ฌ์ฉํ๋ค๋ฉด - iOS 15 ์ด์: keyboardLayoutGuide๋ฅผ ํ์ฉํ์ฌ ๋ ์ด์์์ ์ก๊ธฐ - iOS 14 ์ดํ: ํค๋ณด๋์ ์ํ์ ๋ฐ๋ผ ํค๋ณด๋์ ๋์ด๋ฅผ ๊ณ์ฐํด์ ๋ทฐ์ ์์น๋ฅผ ์กฐ์ view.keyboardLayoutGuide SwiftUI ์ฌ์ฉ - iOS 15 ์ด์: @FocusState ํ์ฉ - iOS 14 ์ดํ: NotificationCenter์ Combine์ ํ์ฉ ์ํ์ฝ๋ ํค๋ณด๋ ์ํ๋ฅผ ์ฝ์ ์ ์๋๋ก ์๋ ์ฝ๋๋ฅผ ์์ฑ protocol KeyboardReadable { var keyboardPublisher: Any..
Networking(feat. RestAPI) Combine์ ํ์ฉํด์ ์ฝ๊ฒ ์๋ฒ์ ํต์ ์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ์ด ๊ธ์ ์ ์ผ ์๋ ๋ถ๋ถ์์๋ MVVM์ ๋ํ ๊ณ ์ฐฐ๋ ๋ค์ด ์์ต๋๋ค. ๋์ด๋๋ ์ด 3๊ฐ์ง๋ก ๋๋์ด ์์ต๋๋ค. ํ์ผ์ ํ์ธํด์ฃผ์ธ์! ์ด ํฌ์คํ ์์๋ Refactoring(์)๊ณผ Advanced Model์ ๋ํด์๋ง ์ค๋ช ํฉ๋๋ค. ์์ธํ ์ฝ๋๋ ์๋ ์ฒจ๋ถ ํ์ผ์ ํ์ธํด์ฃผ์ธ์!!! ๐ฅ ๋ชฉ์ฐจ ๐ฅ 1. Refactoring (์) 2. MVVM์ ๋ํ ๊ณ ์ฐฐ(Combine ํ๋ฌ์ฐจ,, 2022.06.11) ๐ ๋ชจ๋ธ // // UserModel.swift // CombineNetworking // // Created by Hamlit Jason on 2022/06/10. // // let user = try?..
โ MVVM Pattern ์๋์ ๋ฌธ์๋ฅผ ๊ตฌ์ ํ์ฌ ์์ด ๋ฌธ์๋ฅผ ๋ฒ์ญํ๊ณ ์ดํดํ ๊ฒ์ ๋ฐํ์ผ๋ก ๊ธ์ ์์ฑํ๊ณ ์์ต๋๋ค. https://www.raywenderlich.com/books/design-patterns-by-tutorials/v3.0/chapters/10-model-view-viewmodel-pattern Design Patterns by Tutorials, Chapter 10: Model-View-ViewModel Pattern Use this pattern when you need to transform models into another representation for a view. This pattern compliments MVC especially well. You’ll embark..
โ ์ด๋ฒ ์๊ฐ์๋ ์คํฐ๋์์ ๊ณต๋ถํ๋ ํ ์ด๋ธ ๋ทฐ ์ฝ๋๋ฆฌ๋ทฐ๋ฅผ ํ ์๊ฐ์ด์ผ. โ๏ธ์ฃผ์์ฌํญ - RxSwift๋ฅผ ์ฃผ๋ก ์ฌ์ฉํ์์ผ๋ฉฐ, RxCocoa๋ฅผ ์ฌ์ฉํ ์ฝ๋๋ ๋ฐ๋ก ํฌ์คํ ์ ๋ค์ํ ์์ . (์ฝ๊ฒ ๋งํด์ .bind, rx.tap ๋ฑ์ ์ฌ์ฉํ์ง ์๊ณ delegate์ dataSource๋ก ์์ฑํ์์) MVVM ํจํด ๋ฐ Singletonํจํด์ ์ฌ์ฉํ์์. ์ฝ๋๋ฅผ ๋ณผ ์ ์๋ ๊ณณ : https://github.com/lgvv/MVVM_RxSwift/tree/main/week2_lgvv_pratice lgvv/MVVM_RxSwift MVVM ํจํด๊ณผ RxSwift ๋ฅผ ํ์ตํ๊ณ , ์ด๋ฅผ ์ ์ฉํ ํ๋ก์ ํธ๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํ ์คํฐ๋๋ชจ์์ ๋๋ค. - lgvv/MVVM_RxSwift github.com ๐ ๋ทฐ์ ๊ตฌ์ฑ๋ โ MVVM ์ค..
์ด๋ฒ ์๊ฐ์๋ ๊ฐ์๋ ์งง์์ง๋ง, ๊ณต๋ถํ ๋ด์ฉ์ ์์ฐฝ์ธ ์๊ฐ์ด์๋ค... (๋ชฉ์ฐจ) - MVVM Review - Model ์ค์ ์ค๋ช - ViewModel ์ค์ ์ค๋ช - View ์ค์ ์ค๋ช - ๊ตฌ์กฐ์ฒด ๋ฐฐ์ด์ ์ ๋ ฌํ๋ ์ฝ๋์ ๋ํด์ ์ ๋ฆฌ โ MVVM Review - Model : ๋ฐ์ดํฐ(struct) - View : UI์์(UIView, UIViewController) - ViewModel : ์ค๊ณ์(ViewModel) -> ๋ทฐ์ ๋ชจ๋ธ์ด ์ง์ ์ํตํ๋๊ฒ ์๋๋ผ, ViewModel์ ํตํด ๊ฐ์ ์ํตํด์ผ ํ๋ค. ๐ก์ด๋ก ์ ๋ํด ๋ ๊ตฌ์ฒด์ ์ธ ์ฌํญ์ด ๊ถ๊ธํ๋ค๋ฉด... 2021.06.21 - [iOS/ํจ์บ ๊ณต๋ถ] - MVVM ํจํด MVVM ํจํด ๋์์ธ ํจํด ๊ธฐ์ด #1 ํด๋ฆฐ ์ํคํ ์ณ ๐ ๋์์ธ ํจํด ๐ ์ ๋ํ ๊ณ ๋ฏผ!! Go..
๋์์ธ ํจํด ๊ธฐ์ด #1 ํด๋ฆฐ ์ํคํ ์ณ ๐ ๋์์ธ ํจํด ๐ ์ ๋ํ ๊ณ ๋ฏผ!! Goal 1. ๊ธฐ์ ๋ถ์ฑ ์ต์ํ ๐ธ 2. ์ฌ์ฌ์ฉ ๋ฐ ์ง์ ๊ฐ๋ฅ โป๏ธ ๋์์ธ ํจํด ๊ธฐ์ด #2 MVC(Model - View - Controller) Model : ๋ฐ์ดํฐ(Struct) View : UI์์(UIView) Controller : ์ค๊ณ์ (UIViewController) ์ปจํธ๋กค๋ฌ๋ ์ค๊ณ์๋ก์จ View์ Model๊ณผ ์์ฌ์ํต์ ํ๊ฒ ๋๋๋ฐ, Model์ด ๋ฐ์ดํฐ๊ฐ ๋ฐ๋๋ฉด Controller์๊ฒ ๋ฐ์ดํฐ๊ฐ ๋ฐ๋์๋ค๊ณ Notifyํด์ค ๋๋ ์๊ณ , ๋ฐ๋๋ก Controller๊ฐ Model์ ์ง์ ์ ๊ทผํด์ ๋ ๋ฐ์ดํฐ ๋ฐ๋์ด์ผ ํ ํ์๊ฐ ์๊ตฌ๋! ํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ง์ ๋ฐ๊พธ๊ธฐ๋ ํ๋ค. View์ ๊ฒฝ์ฐ์๋ ์ปจํธ๋กค๋ฌ๊ฐ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ๋ทฐ์๊ฒ ๋ฐ..