안녕하세요. 이전 글에서 @ObservedObject, @StateObject에 대해 알아봤고, 오늘은 마지막 @Environment에 대해 알아보겠습니다. @Environment A property wrapper that reads a value from a view’s environment. 출처: 공식문서 공식 문서에는. @Environment Property Wrapper는 View 환경에 저장된 EnvironmentValues 을 읽어오기 위한 Property Wrapper이고, key path를 통해 EnvironmentValues을 지정하고, 읽어올 수 있다고, 나와있습니다. 위 같은 글을 읽었을 땐 바로 이해가 되질 못했습니다. 때문에 직접 사용해 보면서 정리해 보겠습니다. 예제를 통해 사..
안녕하세요. 이전 글에선 @State, @Binding, @Published 3가지 Property Wrapper에 대해 알아보았고, 이번엔 @ObservedObject, @StateObject에 대해 알아보겠습니다. @ObservedObject와 @StateObject A property wrapper type that subscribes to an observable object and invalidates a view whenever the observable object changes. 출처: 공식문서 둘은 비슷한 상황에 사용되고, 공통점이 많기 때문에 같이 정리해 보겠습니다. @ObservedObject와 @StateObject는 ViewModel 객체와 같은 반응형 객체를 만들 때 사용되는 P..
안녕하세요. 오늘은 SwiftUI를 접하면서 동시에 Property Wrapper 또한 접하게 되면서 주로 사용하는 것들에 대해서 정리할 필요성을 느껴 Property Wrapper에 대해 작성해 보려 합니다. 때문에 이번에 알아볼 Property Wrapper를 소개하면, @State @Binding @Published @ObservedObject @StateObject @Environment 위 6가지에 대해 알아볼까 합니다. 6가지 외에도 더 많기도 하고, 직접 커스텀 해서 만들 수도 있지만, 프로젝트하면서 가장 많이 사용했던 것들만 뽑아봤습니다. 사실 6개도 많아서 2편으로 나눠 작성해보려 합니다. 먼저, 프로젝트 하면서 가장 많이 사용되었던 State 부터 알아보겠습니다. @State A pro..
안녕하세요. 이번에 프로젝트를 진행하면서 JWT를 통한 인증 방식을 사용했는데 앱 같은 경우 accessToken의 유효기간이 있어 refreshToken을 사용해 토큰을 갱신 받아야 합니다. 때문에 오늘 알아볼 것은 좀 더 간편하게 accessToken을 갱신 받을 수 있는 방법에 대해 알아보겠습니다. RequestInterceptor Type that provides both `RequestAdapter` and `RequestRetrier` functionality. `RequestAdapter` 및 `RequestRetrier` 기능을 모두 제공하는 유형입니다. RequestInterceptor는 Alamofire 라이브러리에서 제공하는 프로토콜 입니다. 프로토콜을 보면, adapt와, retry..
Scheduler A protocol that defines when and how to execute a closure. 클로저를 실행하는 시기와 방법을 정의하는 프로토콜입니다. Scheduler를 사용하는 이유는 우리가 구현한 클로저가 언제 실행될지, 무슨 쓰레드에서 실행될지 제어하기 위해서이다. 때문에 Combine에선 DispatchQueue OperationQueue RunLoop ImmediateScheduler 위와 같은 Scheduler를 제공한다. 위 DispatchQueue, OperationQueue를 이용하여 우린 클로저가 무슨 쓰레드에서 실행될지 제어해줄 수 있고, RunLoop 통해 어떠한 RunLoop에서 실행될 지 결정해 줄 수 있다. ImmediateScheduler는 생소..
Subject A publisher that exposes a method for outside callers to publish elements. 외부 호출자가 요소를 게시할 수 있도록 메서드를 노출하는 게시자입니다. Subject또한 프로토콜이다. Subject도 쉽게 생각하면, publisher의 한 종류이다. protocol Subject : AnyObject, Publisher 왜냐하면, Subject 또한 publisher를 채택받고 있기 때문이다. 자그럼 둘은 무슨 차이냐! 일반 publisher 같은 경우 선언과 동시에 방출될 값이 정해진다. 예를 들어, Just 같은 경우에도 let justPublisher = Just("Combine 첫 교시") 정해진 "Combine 첫 교시"라는 값..
- Total
- Today
- Yesterday
- 다이나믹 프로그래밍
- 실버
- 이분탐색
- BFS
- photoUI
- GCD
- PhotoKit
- 코테
- 회고
- 완전탐색
- 코딩테스트
- 탐색
- 알고리즘
- Swift
- 동시성
- 그리디
- 비동기
- Combine
- Property wrapper
- 챌린지
- 백준
- 재귀
- ios
- 네부캠
- 노드
- 구현
- photos
- 브루트포스 알고리즘
- dfs
- Race Condition
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |