카
카카오헤어샵
January 19, 20231회
우리는 한다 리팩토링을 - UIKit+RxSwift 에서 SwiftUI+Combine 로의 여정
간단 소개
카카오헤어샵 iOS 디자이너앱을 UIKit+RxSwift에서 SwiftUI+Combine으로 리팩토링하며 MVVM에서 Store 패턴으로 전환한 경험 공유.
AI Summary
- UIKit+RxSwift에서 SwiftUI+Combine으로의 전환
- 카카오헤어샵 iOS 디자이너앱을 UIKit + RxSwift에서 SwiftUI + Combine으로 리팩토링하는 과정 소개
- 디자이너앱의 작은 규모 덕분에 빠른 대응이 가능하고, SwiftUI와 Combine의 발전된 완성도를 활용하기 위함
- MVVM 패턴에서 Store 패턴으로의 변화
- 기존 MVVM 패턴에서 SwiftUI의 @State를 활용, View의 상태 관리를 Store라는 새로운 개념으로 분리
- View에 모든 로직을 포함시키는 대신, Store를 통해 로직을 분리하고 Unit Test 용이성을 확보
- SwiftUI와 Combine을 활용한 UI 및 로직 구현
- Combine의 Future를 사용하여 API 호출 부분을 구현하고, eraseToAnyPublisher를 통해 깔끔한 Publisher 생성
- SwiftUI의 선언적 UI 방식을 통해 기존 UIKit 기반의 뷰 컨트롤러를 간결하게 리팩토링
Next Feeds
Scroll Snap API를 통해 이미지 캐러셀 완성하기
Scroll-Snap API를 사용하여 이미지 캐러셀을 구현하고, 스크롤 스냅 효과를 적용하는 방법을 설명합니다.
Scroll Snap APICSS캐러셀스크롤UI
2023. 1. 19.
카카오엔터테인먼트FE
Scroll Snap API를 통해 이미지 캐러셀 완성하기
Scroll-Snap API를 사용하여 이미지 캐러셀을 구현하고, 스크롤 스냅 효과를 적용하는 방법을 설명합니다.
Scroll Snap APICSS캐러셀스크롤UI
2023. 1. 19.
카카오엔터테인먼트FE
react-query로 데이터 처리하기 - 파트너스 레거시 코드 리팩토링(2) api 로직, react-query
파트너스 레거시 코드 리팩토링을 통해 API 로직을 분리하고 React-Query를 도입하여 데이터 처리 효율성을 개선했습니다.
react-query리팩토링ReduxAPIhooks
2023. 1. 18.
카카오헤어샵

리디에서 Kafka를 사용하는 법
리디는 Kafka를 이벤트 스트리밍 플랫폼으로 활용하여 실시간 랭킹, 애널리틱스, 작업 큐 등 다양한 서비스를 개선하고 있습니다.
KafkaR-Bus이벤트 스트리밍실시간 랭킹애널리틱스
2023. 1. 17.
리디

CTO가 커리어를 걸고 비트 레벨까지 내려가서 DB를 해킹했던 이야기
CTO가 비트 레벨까지 파고들어 DB를 해킹, 36시간 만에 서비스 장애를 극복한 데브시스터즈의 기술 이야기.
CockroachDB데이터베이스 해킹장애 복구Event SourcingPebble
2023. 1. 17.
데브시스터즈

Service Discovery DR 구성 3부 - eurekube-operator의 Zone Failover를 위한 Spring Cloud LoadBalancer 탐구
eurekube-operator의 Zone Failover 구현을 위해 Spring Cloud LoadBalancer를 활용하고 Chaos Test로 검증하는 과정을 설명합니다.
Spring CloudLoadBalancereurekube-operatorZone FailoverService Discovery
2023. 1. 15.
11번가