전체 글 (39) 썸네일형 리스트형 Tuist - tuist test https://docs.tuist.io/en/guides/develop/test What is Tuist? | Tuistdocs.tuist.io OverviewTuist는 tuist test라는 명령어를 제공한다. 문서에서 기존 Xcode에서 테스트를 실행하는 것보다 tuist test가 매력적인 이유를 아래로 소개한다. 단일 명령 (Single Command)tuist test 단일 명령으로 프로젝트가 필요할 경우 생성된 후 컴파일되도록 보장한다.tuist generate와 같은 빌드 명령을 따로 실행할 필요 없이 정말 단일 명령으로 모든 테스트가 가능하다.보기 좋은 출력 (Beautified Output)Tuist는 xcbeautify와 같은 도구를 사용하여 복잡하고 보기 힘든 출력을 더 읽기 쉽게 .. Concurrency (10) Actors in a Distributed System 이전글 - Concurrency(9) Global Actors Modern Concurrency in Swift를 읽고 간단 정리 이전 장들에서, 다중 CPU 코어에서 동시성 작업을 병렬로 실행하는 방법들을 배웠다.또한 액터 타입을 사용하여 동시성을 안전하게 관리하는 방법도 익혔다. 이번 마지막 장에서는 Distributed Actor를 다룬다.Distributed Actor는 로컬에서만 실행되는 것이 아니라, 다른 프로세스나 다른 기기에서 실행될 수 있다. Distributed Actor는 다음 상황에서 사용될 수 있다. 같은 기기의 자식 프로세스에서 코드 실행동일한 기기에서 메인 프로세스와 독릭접인 자식 프로세스에서 코드를 실행하여 안전성을 높인다.자식 프로세스에 치명적 오류가 발생하더라도, 메인.. Concurrency (9) Global Actors 이전글 - Concurrency(8) Getting Started With Actors Modern Concurrency in Swift를 읽고 간단 정리 이전 장에서는 Swift의 액터(actor) 타입을 공부했다. 이는 코드가 내부 상태에 안전하고 동시성 접근을 할 수 있도록 해준다.동시성 작업(Concurrent computation)들을 신뢰할 수 있게 해주며, data race를 방지한다. 이번 장에서는 Global Actor에 대해 다룰 것인데, MainActor는 대표적인 Global Actor 중 하나이다.Swift의 MainActor는 UI 작업을 메인 스레드에서 안전하게 실행시켜 주는 역할을 한다. 앱은 항상 하나의 메인 스레드에서 실행되기 때문에 다수의 MainActor를 생성할 수.. Swift 공식문서 9. Structures and Classes https://docs.swift.org/swift-book/documentation/the-swift-programming-language/classesandstructuresDocumentationdocs.swift.orgComparing Structures and Classes공통점저장 프로퍼티 정의 가능메서드 정의 가능subscripts 정의 가능생성자로 초기 값 설정 정의Extension으로 기본 구현에 기능을 확장 가능Protocol 채택 가능클래스가 추가적으로 갖는 것하나의 클래스 상속 가능타입 캐스팅으로 런타임에 클래스 인스턴스의 타입을 확인하고 해석 가능Deinitializer로 클래스의 인스턴스가 할당한 자원 해제 가능(Reference Counting) 클래스 인스턴스에 대해 하나 이.. Swift 공식문서 8. Enumeration https://docs.swift.org/swift-book/documentation/the-swift-programming-language/enumerations Documentation docs.swift.orgOverview열거형은 연관성 있는 값들의 그룹을 위한 공통 타입열거형은 값 타입(Value Type)열거형에 원시 값(raw value)을 제공할 수 있다.String, Character, Int, Float, Double열거형은 1급 객체이다.1급 객체 (first-class citizen)변수나 데이터에 할당할 수 있어야 한다.객체의 인자로 넘길 수 있어야 한다.객체의 리턴값으로 리턴할 수 있어야 한다.계산 프로퍼티, 인스턴스 메서드 지원 가능생성자 정의, Extesnsion, 프로토콜 .. Concurrency (8) Getting Started With Actors 이전글 - Concurrency(7) Concurrent Code With Task Group Modern Concurrency in Swift를 읽고 간단 정리 이전 챕터에서 TaskGroup, ThrowingTaskGroup API를 사용해 작업을 병렬로 실행하여, 여러 스레드와 CPU 코어를 사용할 수 있도록 했다. TaskGroup의 설계는 작업을 병렬로 실행하면서도, 그룹을 비동기 시퀀스로 순회함으로써 안전하고 직렬적인 방식으로 실행 결과를 수집할 수 있도록 해준다. 이전 장에서 공유 상태 변경 시에 유의점에 대해 언급했는데, 이는 동시성 프로그래밍의 어려운 측면 중 하나이다.스레드가 동시에 동일한 메모리 영역에 접근할 때 신중한 제어가 필요하다. 이번 챕터에서는 이를 다룰 수 있는 act.. Swift 공식문서 7. Closures https://docs.swift.org/swift-book/documentation/the-swift-programming-language/closuresDocumentationdocs.swift.org Swift 공식 문서 보면서 내 맘대로 정리Overview클로저는 기능이 자체적으로 포함된 코드 블록이며, 코드에서 전달되어 사용될 수 있다.다른 프로그래밍 언어의 클로저, 익명 함수, 람다, 블록과 유사클로저는 정의된 컨텍스트에서 상수나 변수에 대해 참조를 캡처하고 저장할 수 있다.Swift는 캡처와 관련된 모든 메모리를 자동으로 관리 클로저가 가질 수 있는 모양 전역 함수(Global Function) : 이름을 갖고, 값을 캡처하지 않는 클로저 중첩 함수(Nested Fuction) : 이름을 갖.. Swift 공식문서 6. Functions https://docs.swift.org/swift-book/documentation/the-swift-programming-language/functions Documentation docs.swift.orgSwift 공식 문서 보면서 내 맘대로 정리 [다룰 내용들에 대한 요약]함수는 특정 작업을 수행하는 독립적인 코드 블록작업을 수행할 때, 함수의 이름을 사용하여 해당 함수를 "호출"한다.Swift의 함수 구문은 C 스타일 함수부터 각 파라미터에 이름과 레이블을 사용하는 Obj-C 스타일의 메서드까지 표현할 수 있을 정도로 유연하다.파라미터는 기본 값을 가질 수 있어 함수 호출이 더 간단해지며, in-out 파라미터를 통해 함수가 실행된 후에 전달된 변수를 수정할 수 있다.Swift의 모든 함수는 타.. 이전 1 2 3 4 5 다음