본문 바로가기
728x90

스위프트3

[Swift] 서브 스크립트(Subscripts) 📌 서브 스크립트(Subscripts) 클래스. 구조체, 열거형이 collection, list, sequence의 멤버 요소에 접근할 수 있는 단축키이다. 별도의 메소드 없이 인덱스로 값을 설정하고 조회하기 위해 서브스크립트 사용 someArray[index] -> Array 인스턴스 요소에 접근 someDictionary[key] -> Dictionary 인스턴스에 접근 1️⃣ 서브 스크립트 구문 인스턴스 이름 뒤 대괄호에 하나 이상의 값을 작성하여 타입의 인스턴스를 조회 가능하다. 읽기-쓰기 혹은 읽기 전용이 될 수 있음 getter와 setter를 통해 동작 subscript(index: Int) -> Int { get { // Return an appropriate subscript value .. 2023. 2. 13.
[Swift] 메서드(Methods) 📌 메서드(Methods) 특정 타입과 연관된 함수 기존 objective-C와는 다르게 Swift에서는 클래스 뿐만 아니라, 구조체, 열거형 모두 메서드를 정의할 수 있다. 1️⃣ 인스턴스 매서드(Instance Methods) 특정 클래스, 구조체, 또는 열거형의 인스턴스에 속하는 함수 인스턴스 프로퍼티에 접근하고 수정하는 방법 제공 class Counter { var count = 0 func increment() { count += 1 } func increment(by amount: Int) { count += amount } func reset() { count = 0 } } 위의 Counter 클래스는 3개의 인스턴스 매서드를 갖고 있다. increment() : 1씩 카운터 증가 incre.. 2023. 2. 13.
[Swift] 구조체와 클래스(Structures and Classes) 📌 구조체와 클래스 차이 구조체 클래스 공통점 1. 값을 저장할 수 있다. 2. 메소드를 정의할 수 있다. 3. 서브 스크립트 정의를 통해 값에 접근 가능 4. 초기화 상태 정의 가능 5. 기능적 확장 가능 6. 표준 프로토콜 준수 차이점 1. 타입을 추론하기 쉬움 2. struct 키워드로 시작 3. 값 타입(value Types) 임 1. class 키워드로 시작 2. 상속 사용 가능(한 클래스가 다른 클래스의 특성 상속 가능) 3. 타입 캐스팅을 사용하면 런타임 시에 클래스 인스턴스 확인 가능 4. 초기화 해제 구문 -> 클래스 인스턴스가 할당된 리소스 해제 가능 5. 자동 참조 카운팅을 통해 하나 이상의 인스턴스 참조를 허락함 6. 참조 타입(Reference Types) 임 단점 ) 복잡성 증가.. 2023. 2. 8.
728x90
반응형