swift에는 두 가지의 타입이 존재한다: named type, compound type.
CustomStringConvertible: 텍스트적 표현을 커스터마이징하는 타입
인스턴스에 초기값을 설정할 수 있는 방법으로는 프로퍼티에 기본값을 부여 와 이니셜라이저 두 가지가 있다.
Structures and Classes구조체와 클래스는 일반적인 목적의, 유연한 구조를 가진 코드의 기본 블럭이다. 기능으 부여하기 위해 변수, 상수, 함수를 정의하듯 구조체와 클래스에서는 프로퍼티와 메소드를 선언한다.
싱글톤 클래스는 애플리케이션이 요청한 횟수와 상관없이 동일한 인스턴스를 반환합니다. 일반적인 클래스에서는 호출자가 원하는 만큼 클래스의 인스턴스를 만들 수 있지만 싱글톤 클래스에서는 프로세스당 클래스의 인스턴스가 하나만 있을 수 있습니다.
Protocols프로토콜은 메소드, 프로퍼티, 기타 요구사항들의 청사진(blueprint)이다.
값 유형의 가장 기본 기능은 데이터의 고유한 복사본을 가진 독립 인스턴스를 생성하며 복사된다는 것이다. 메모리의 스택에 저장된다.스위프트 타입 중 값 타입은 아래와 같다.
xcode가 IBOutlet 변수를 생성할 때 기본으로 weak(약한 참조)를 사용한다는 것에 대해서 고민해보았다.subView가 view에 할당되어 있는 경우,
Deligate Pattern
찰리의 리뷰 중 Struct 내부에 있는 Class의 데이터 타입에 대한 이야기가 있어 실험을 진행해보았습니다.
프로젝트를 진행하면서, Race Condition을 막기 위해 DispatichSemaphore 를 사용해보았습니다.