참조가 아닌 복사를 원할 때자신을 상속할 필요가 없거나, 상속받을 필요가 없을 때데이터를 전달할 때 값을 복사하여 전달데이터를 전달할 때 값의 메모리 위치를 전달
init init은 Swift의 초기화 이니셜라이저에요. 이 init은 클래스의 모든 프로퍼티가 초기화 될 수 있도록 해줘야합니당 이런식으로 말이죠 만약 init의 파라미터에서 클래스의 프로퍼티가 하나라도 빠지게 된다면 오류가 발생하게 됩니다. (init은 클래
Any는 함수 타입을 포함하여 모든 타입의 인스턴스를 나타낼 수 있다.모든 클래스가 암시적으로 준수하는 프로토콜 (타입이라기보다 프로토콜)AnyObject는 모든 클래스 타입의 인스턴스를 나타낼 수 있다.Int, Strint, Bool, Float, Double 등 모
Optional은 변수의 값이 값이 존재할수도, 존재하지 않을수도 있다는 것을 의미한다.값이 존재한다면 해당 값 그대로. 존재하지 않는다면 nil값이 저장되어 있다.Optional의 변수 선언은 ? 키워드를 사용한다.Optional의 디폴트 값은 nil.Optional
Collection, List, Sequence 등 집합의 특정 Member Elements 에 간단하게 접근할 수 있는 문법입니다.Subscript 은 추가적인 메소드없이 특정 값을 할당 하거나 가져올 수 있습니다.예를 들어 someArrayindex로 배열 인스턴
Class, Stuct, Enum 형태의 인스턴스에 속한 메소드를 의미합니다.클래스를 통해 호출할 수 없고, 클래스의 인스턴스를 만들어 실체화 하여 생성된 인스턴스를 통해서 호출할 수 있는 메소드 입니다.Class Method 는 인스턴스를 만들어 실체화 하지 않아도
싱글톤 패턴은 특정 용도로 객체를 하나 생성해서 공용으로 사용하고 싶을 때 사용하는 방법입니다.즉, 인스턴스가 하나만 존재하는 것을 보증하고 싶을 경우 에 사용하게 되는데, 주로 환경설정, 네트워크 객체, 로그인 정보 등을 특정 용도로 생성해둔 객체에 넣어두고 필요할때
프로퍼티, 메서드를 가질 수 있습니다.extension이 가능합니다.값 타입입니다.보통 Struct는 데이터를 용도에 맞게 사용하고자 할 때 사용합니다.Struct를 이용해 하나의 새로운 사용자 정의 데이터 타입을 만들어 정의 합니다.구조체의 정의를 마친 후 구조체의
글로벌 큐 에 작업을 배치할 때, 작업의 중요도 에 따라 QoS 를 적절히 사용해야 합니다.작업간의 인과관계 를 파악해서 순서를 정해줘야 합니다.스레드들이 동기적, 비동기적 으로 동작하게 할지를 명확하게 정의 해야 합니다.스레드를 직접 관리하는게 아닌 Queue를 이용
MVC 패턴은 애플에서 기본적으로 지원하는 디자인 패턴으로, Model + View + Controller 구조의 아키텍처 패턴을 말합니다.각 영역에 대해 알아보장.Model 은 앱의 데이터와 비즈니스 로직을 갖고 있다.View 는 사용자에게 데이터를 보여주거나 UI를
"요구사항" 이라는 단어로 표현할 수 있다.프로토콜에는 구현해야하는 프로퍼티, 메소드의 목록들이 나열되어 있습니다.프로토콜을 채용(구독)했다면, 프로토콜에 정의되어 있는 요구사항을 반드시 모두 구현 해야 합니다.이것을 Adoping Protocol 이라고 하며, "프로
현재 코드 블록을 나가기 전에 꼭 실행해야 되는 코드defer의 호출 순서는 역순!에러가 발생하면서 함수를 반환하지 않고 실행을 종료하기 때문에 defer가 호출되지 않는다!
타입을 파라미터화해서 컴파일시 구체적인 타입이 결정되도록 하는 것제네릭을 이용하면 어떤 타입에도 유연하게 대응할 수 있다.재사용하기도 쉽고, 코드의 중복을 줄일 수 있다.실제 타입은 함수가 호출되는 순간 결정된다.하나의 타입 매개변수를 갖지 않고 여러 개의 타입 매개변