본문 바로가기

iOS

(34)
swift docs - Concurrency Concurrency - swift docs 를 읽고 정리한 글 입니다. Swift는 구조화된 방식으로 비동기 및 병렬 코드를 작성할 수 있도록 bulit-in 지원합니다. 한 번에 한 개의 프로그램만 실행 될지라도 비동기 코드는 일시 중단되었다가 나중에 재개될 수 있습니다. 프로그램에서 코드를 일시 중단했다가 재개하면 장기 실행 작업(네트워크를 통해 데이터를 가져오거나 파일을 구문 분석하는 등)을 계속하면서 단기 작업(UI 업데이트 등)에서 계속 진전을 이룰 수 있습니다. 병렬 코드는 여러 코드가 동시에 실행되는 것을 의미합니다. 예를 들어 4코어 프로세서가 있는 컴퓨터는 4개의 코드를 동시에 실행할 수 있으며 각 코어가 하나의 작업을 수행합니다. 병렬 및 비동기 코드를 사용하는 프로그램은 한 번에 여..
SwiftUI 뷰가 다시 그려지는 조건 탐구 (Redraw) SwiftUI로 프로젝트를 진행하던 도중, Redraw 조건을 명확하게 인지하지 못하고 있어 애먹은 일이 있었습니다. 그래서 뷰가 다시 그려지는 조건에 대해서 확인해보고자 합니다.PART 1. WWDC - Demystify SwiftUI WWDC - Demystify SwiftUI를 통해 몇 가지 사실을 알 수 있었습니다.1. Identity1-1. View는 Identitiy를 갖는다. SwiftUI는 이 Identity로 서로 다른 뷰들을 구분한다. 당연하게도 같은 Identity를 가지면 같은 View이다.1-2. Identity는 Structural과 Explict으로 구분된다.Explicit은 직접 명시해줄 수 있는 Identity이다. - modifier로 직접 부여하는 값 - ForEach에..