Announcing the Reducer Protocol Today we are releasing the biggest update to the Composable Architecture ever, completely reimagining how features are built with the library. www.pointfree.co 작년 10월에 The Composable Architecture 0.41.0 버전과 함께 Reducer Protocol이 소개되었습니다. ReducerProtocol 사용을 위해서는 swift 5.6 버전 이상이 필요합니다.(ReducerProtocol 채택 후 구성을 할때, opaque type 문법 까지 온전히 활용하기 위해서는 5.7 버전 이상이 필요) 오늘은 ..
iOS의 상태관리 기반 단방향 아키텍쳐인 TCA(The Composable Architecture)는 View에서 이벤트가 발생할때 ObservableObject 프로토콜을 준수하는 ViewStore에서 특정 이벤트에 대한 Action을 send 하고 이를 Reducer에서 처리하게 됩니다. Reducer에서는 이후 이벤트 처리를 위해 Effect를 반환하는데요. 이 Effect는 Combine framework의 Publisher로 되어있습니다. 다양한 Combine Opeartor를 사용할 수도 있는데요. Publisher를 구독하고 메모리 해제하는 코드는 어디에 있는지, 어떤식으로 돌아가고 있을지 보겠습니다. 먼저, iOS TCA가 이벤트 발생을 할때 어떤식으로 동작하는지 간단하게 알고 싶으싣다면,..
TCA는 Point-free에서 제안한 아키텍쳐로 The Composable Architecture라고 하며, Store의 State 변화에 따라 View를 업데이트해주는 상태 기반의 단방향 아키텍쳐입니다. 저는 개인적으로 개발한 앱에 TCA를 도입하여 사용하고 있습니다. 또한 화면 전환 이벤트를 편리하게 관리하기 위해 TCACoordinator를 함께 사용하여 개발하고 있습니다. 오늘은 제가 개발한 코드 일부를 보면서 TCA의 간략한 동작 방식을 돌아보고자 합니다. 최상위 뷰부터 해서 순차적으로 그림을 그려보는 것보다는 하위 뷰의 단편적인 이벤트 발생을 기점으로 TCA의 동작방식을 돌아보려고 합니다. 언제든 포스팅 내용에 대한 피드백 부탁드립니다. TCA에서 각각의 View는 Store를 갖는다. TC..
The Composable Architecture란 무엇일까? GitHub - pointfreeco/swift-composable-architecture: A library for building applications in a consistent and understandable way, A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind. - GitHub - pointfreeco/swift-composable-architecture: A library for bu... github.com SwiftUI, Combine등과 함께 사..
- Total
- Today
- Yesterday
- createML
- 알고리즘
- uikit
- Collection
- 프로그래머스
- 부스트코스
- swift
- 백준swift
- 프로그래머스swift
- swift알고리즘
- CoreML
- 컬렉션
- 김프매매
- 자연어처리
- publisher
- 백준알고리즘
- 알고리즘문제
- Protocol
- swift reduce
- swift string
- 스위프트
- swift 문자열
- 프로토콜
- swift언어
- ios
- Swift 알고리즘
- SwiftUI
- swift 기초
- swift문제
- 개발자문서
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |