property 학습하기 (4) [ Property Observer ]
·
프로그래밍언어/swift
이번에는 프로퍼티 observer(관찰자)를 알아보자  Property Observer ( 프로퍼티 관찰자 )프로퍼티 값의 변화를 관찰하는 것으로, 저장 프로퍼티에 추가할 수 있다.프로퍼티에 할당되는 새 값이 현재 값과 동일하더라도 속성 값이 설정되면 호출된다. 종류 willSetdidSet호출 시기값이 저장되기 직전값이 저장된 직후익명 파라미터 이름newValueoldValue 호출 순서옵저버는 연산 프로퍼티에 추가할 수 없지만, override 를 통해 추가할 수 있다.실제르는 거의 안쓰지만 호출 순서를 쉽게 알아보기 위해 적용해보자 class Human { var name = "Unknown" var alias: String { get { print("Hu..
property 학습하기 (3) [ Type Property ]
·
프로그래밍언어/swift
이번에는 타입 프로퍼티의 역할을 학습해보자. Type Property (타입 프로퍼티)모든 타입이 공통적인 값을 정의하는 역할을 한다. 특징1) 클래스, 구조체, 열거형에서 사용된다 2) 저장 타입 프로퍼티와 연산 타입 프로퍼티가 존재하며 저장 타입 프로퍼티의 경우 항상 초기화가 되어 있어야 한다 3) static을 이용해 선언하며, 자동으로 lazy로 작동한다 종류 staticclass저장 프로퍼티 사용 가능OX연산 프로퍼티로 사용 가능OX오버라이딩 가능 XO예시 코드class Human { static var typeStoredProperty1: String = "HELLO" // ❌ 에러발생 class var typeStoredProperty2: String = "H..
property 학습하기 (2) [ computed Property ]
·
프로그래밍언어/swift
이번에는 연산 프로퍼티의 역할을 학습해보자 Computed Property (연산 프로퍼티)저장 공간을 따로 갖고 있지않고 저장 프로퍼티의 값을 읽어 연산을 실행하거나프로퍼티로 전달 받은 값을 다른 프로퍼티에 저장하는 역할을 한다. 특징1) 항상 var로 선언되야한다. 2) getter 와 setter가 존재한다. 3) getter는 필수지만, setter는 필수가 아니다. 4) setter를 명시하지 않으면 get-only가 된다. 종류 인스턴스 연산 프로퍼티타입 연산 프로퍼티사용 프로퍼티 종류인스턴스 저장 프로퍼티타입 저장 프로퍼티lzay 동작 여부XO  예시 코드class Human { var name: String = "BOOST CAMP" // 인스턴스 저장 프로퍼티 static v..
property 학습하기 (1) [ Stored Property ]
·
프로그래밍언어/swift
swift에는 정말 여러개의 property들이 존재한다.이번 포스팅부터는 swift의 여러 property들의 종류와 특징을 정리하고 코드를 통해 학습한다. 프로퍼티란?Swift에서 프로퍼티(Properties)는 클래스, 구조체, 열거형과 같은 객체의 데이터를 저장하는 변수 또는 상수이다. Stored Property (저장 프로퍼티)값을 저장하는 프로퍼티 종류 인스턴스 저장 프로퍼티타입 저장 프로퍼티지연 저장 프로퍼티역할클래스와 구조체에서만 사용할 수 있고, 값을 저장하기 위해 선언되는 상수/변수타입 자체에 속하는 저장 프로퍼티프로퍼티가 호출되는순간에 초기화 되는 저장 프로퍼티lazy 동작 여부XOOlet(상수) 가능 여부OOX  예시 코드class Human { var name: String = ..