Property Wrappers @something은 다 프로퍼티 래퍼이다. 각 Property Wrapper는 구조체이며 이는 'template'동작을 캡슐화한다. 예를 들어 @State는 변수가 힙에 살도록 하고 @Published는 변경이 있을 때 publish 하도록 하고 @ObservedObject는 published 변경이 감지되면 뷰를 다시 그리도록 하고 Property Wrapper는 이 구조체들을 생성하고 사용하기 쉽게 해준다. Property Wrapper 안 쓰면 아래처럼 사용해야 한다. Property Wrapper를 사용하기 위해 구조체를 만들고 그에 맞게 구현해줘야 한다. 또한 Property Wrapper안에 또 다른 변수가 존재하는데 projectedValue이다. 이 pro..
MVVM은 디자인 패러다임이다. MVVM 없이는 SwiftUI를 사용할 수 없다. 모델 앱의 백앤드 역할 그리고 UI와 View에 독립적이다. 그렇기 때문에 아래와 같이 SwiftUI패키지를 추가하지 않는다. import SwiftUI 데이터와 로직을 가진다. 예를 들어 카드 매칭 게임이 있으면 카드는 데이터가 되고 매칭 하는 부분은 로직이 된다. 뷰 모델을 반영한다. 상태를 가지지 않고 가질 필요가 없다. 리액티브 하기 때문에 모델이 변경될 때 뷰가 자동적으로 변경된다. 뷰모델 뷰를 모델에 바인드 한다. (바인딩) 번역가와 같다. // 모델에서 뷰로 만약에 모델 구조체에 변경이 있다면 뷰모델한테 변경이 있음을 알려준다. 뷰는 뷰모델을 관찰하고 있다가 자동적으로 뷰를 그린다. (즉 뷰모델은 뷰에 대한 포..
- Total
- Today
- Yesterday
- rxswift
- ReactiveX
- swiftUI
- Xcode
- wwdc
- Algorithm
- swift5
- SWIFT
- 스위프트
- string
- ios
- ARC
- 문자열
- 애니메이션
- Animation
- iOS SwiftUI
- RX
- 딥러닝
- 스위프트UI
- 알고리즘
- objective-c
- 머신러닝
- stanford SwiftUI
- Deep learning
- 책
- 책 추천
- leetcode
- 독서
- 책 후기
- objc
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |