일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- segue
- CoreLocation
- Alert
- AsyncImage
- android
- ios
- UserDefaults
- ios15
- cocoapods
- 코딩테스트
- alamofire
- SWIFT
- kakaomap
- Kotlin
- snapkit
- pod install
- programmers
- image
- Java
- format형식
- autolayout
- UIStackView
- swiftUI
- Appearance변경
- EventKit
- MapKit
- SwiftUI_Preview_Provider
- NotificationCenter
- ViewModifier
- 백준
- Today
- Total
목록Design Pattern (3)
감자주먹밥
참고한 유튜브 자료 MVVM 아키텍처를 처음 공부했을 땐 RxSwift로 시작을 했었는데, Combine을 알고 나서 UIKit에서 Combine으로 MVVM을 할 수 있지 않을까 라는 생각에 찾아보고 시도해봤다. 유튜브 예제는 통신 예제에 버튼을 누르면 랜덤한 글이 나오게 하는 것이고, 내가 한 건 로그인 화면을 구현한 것이다. 프로젝트 세팅은 Storyboard로 진행했고 Combine을 제외한 라이브러리는 사용하지 않았다. 간단한 로그인 회원가입 화면을 만들고 MVVM을 적용해봤다. final class SignInViewController: UIViewController, UITextFieldDelegate { @IBOutlet weak var signInButton: UIButton! priva..
Presenter - 데이터 처리 (API Request,..) Model - 데이터 수정, 추가 ViewController - View 설정, 업데이트 Apple MVC는 기존 ViewController에 View, Controller 기능이 집중되어 작성을 하며 커지게 되어 테스트를 하기 어려운 환경이다. Controller의 역할을 분리해 구현한것이 MVP다. View를 최대한 멍청하게 UI를 뿌려주고 Action만 주고받고 받은 Action을 Presenter에 넘겨 그려야 하는 값만 넘겨주고 View에서 다시 그려주는 방식이다. MVVM도 비슷해보이지만 다른점, MVP는. 1 : 1연관관계, MVVM은 * : 1 이다. 특징 UI를 뿌려주는 View, 비즈니스 로직처리를 하는 Presenter를..
Design Pattern ? 개발과정에 공통으로 발생하는 문제를 해결하기 위한게 디자인 패턴이다. 대부분의 디자인 패턴은 복잡하고 거대한 서비스를 만들기 위해 만들어졌다. MVC, MVP, MVVM MVVM Pattern ? 비즈니스 로직과 프레젠테이션 로직을 UI로 부터 분리시키기 위해 만들어진 패턴 View - ViewModel - Model로 구성되어 있다. View -> UI 입력 출력만 담당 ViewModel -> View로 부터 오는 입력을 받아 데이터를 처리하고 다시 보내준다. Model -> 데이터 처리에 필요한 모델 MVVM 에서 ViewModel에 모든 비지니스 로직이 있어야 하는 것이 아니다. ViewModel에는 화면용 데이터를 갖고 있는것, Model 은 View용 Model 로..