옵셔널 값을 안전하게 추출하는 옵셔널 바인딩 방법조건문 안의 옵셔널 값이 nil인지 체크하고, 각 경우에 대한 처리를 안전하게 수행한다.보통 각 조건에 따른 처리를 위해 사용되지만, else문을 생략하고 사용할 수 있다.옵셔널 바인딩 된 상수 if문 안에서만 사용할 수
클로저가 함수의 파라미터로 전달될 때 함수를 벗어나서(함수의 실행이 종료된 후) 실행되는 클로저일반적으로 함수의 파라미터로 전달된 클로저는 함수 내에서만 실행되며, 함수의 범위를 벗어나면 자동으로 소멸한다.@escaping 속성이 지정된 클로저는 함수의 범위를 벗어나도
함수 내에서 파라미터로 전달된 변수의 값을 수정할 수 있도록 하는 키워드Swift에서 함수의 파라미터는 기본적으로 값(Value)으로 복사되어 전달되어, 함수 내부의 파라미터에 대한 변경은 함수 외부에 영향을 주지 않는다.inout 키워드를 통해 해당 변수의 참조(Re
일반적인 타입이나 함수를 추상화하여 타입에 의존하지 않고 재사용성을 높이는 기능함수를 선언할 때 제네릭을 사용하여 타입에 의존하지 않는 범용 코드를 작성할 수 있다.<T>와 같은 형태의 타입 매개변수(type parameter)를 사용하여 임의의 타입 T를 정의할
함수에서 발생할 수 있는 에러를 식별, 처리하는 과정을 관리함수 내에서 특정 조건에 따라 에러를 발생시키기 위해 사용한다.발생될 에러의 종류를 enum과 Error 프로토콜을 활용하여 먼저 정의한다.함수가 에러를 던질 수 있다는 것을 throws를 통해 명시한다.함수
iOS에서 사용되는 참조 카운팅 방식 기반의 메모리 관리 기법Swift에서 참조(Reference) 타입의 인스턴스는 Heap 영역에 할당된다.Heap 영역에 저장된 메모리는 개발자나 메모리 관리 시스템이 명시적으로 해제하기 전까지는 계속해서 남아있기 때문에, 사용하고
Strong, Weak, Unowned Swift의 메모리 관리 시스템에서 참조를 정의할 때 사용되는 키워드 순환 참조 A가 B를 참조하고 B가 A를 참조하는 경우 같이 두 객체가 서로를 참조하면 순환 참조가 발생한다. 순환 참조가 발생하면 ARC의 Reference