본문 바로가기

전체 글

(97)
[Swift] Modern Concurrency Swift ( 1편 - Thread Class로 Thread 문제 파헤치기 ) Swift Concurrency, 그리고 기존의 GCD, OperationQueue 동시성(Concurrency) 프로그래밍이란 여러 작업을 동시에 여러 스레드에서 처리하는 프로그래밍 방식을 뜻합니다. iOS 개발에서 Concurrency는 어플리케이션의 성능 향상 및 UX 향상에 큰 도움을 주며 없어서는 안될 부분입니다. 기존에는 GCD, OperationQueue를 이용하여 이러한 목표를 이룰 수 있었습니다. WWDC 2021에 소개된 Modern Concurrency Swift, Swift Concurrency는 컴파일 타임에 Thread-Safe한 코드를 작성할 수 있도록 도와주고, 특정 상황에 Thread가 멈추지 않고 다른 작업에 할당될 수 있도록 합니다. Swift Concurrency를 본..
[SwiftUI] TCA(The Composable Architecture) 아키텍쳐 알아보기 ( 1편 - TCA, ReducerProtocol) 최근 SwiftUI로 새로운 프로젝트를 진행할 일이 생겨 SwiftUI의 아키텍쳐 패러다임에 대해 공부했고, 프로젝트에 적용중입니다. 링크에 SwiftUI의 MVVM에 대한 견해가 담긴 글이 있습니다. UIKit에서는 MVVM을 많이 이용했지만, SwiftUI의 단방향 Data Flow와 선언형 UI가 주는 장점을 이용하기 위해 TCA를 채택했습니다. 각설하고, SwiftUI의 아키텍쳐 중의 하나인 Pointfreeco의 TCA(the composable architecture)에 대해 정리해 보겠습니다. 본문은 TCA API Document와 TCA Readme 한국어 번역을 참고하여 작성했음을 알려드립니다. TCA(The Composable Architecture)란? - TCA는 일관되고 이해할 수..
[Swift] Apple의 Swift 언어에 Contribute하기 (Feat. chatGPT) 얼마 전 medium에서 스위프트 언어에 기여한 경험 이라는 글을 봤습니다. 개발 실력이나 경력과 관계 없이 적극적인 자세로 contribute하는 자세가 멋있어 보여서, '나도 한번 해 볼까?'라는 충동과 함께 typo 정도라면 수정해서 올릴 수 있을거라는 생각이 들었습니다. 그리고 당장 apple의 repo들을 뒤지기 시작했습니다. 결과는 성공! contribute의 과정을 적어나가 보겠습니다. Apple의 Swift 언어에 Contribute한 과정 1. Apple의 Repo를 돌아보며 typo를 찾기가 쉬울지 판단해보기 우선 typo 찾기가 어렵다면 당장 급한 일은 아니니 개발 공부를 하며 천천히 찾아볼 생각이었습니다. apple의 repo 중 변화가 활발해보이는 것을 고른 다음, github1s..