Swift59 [Swift] Selector ※출처 - 꼼꼼한 재은씨의 Swift: 실전편 싸니까 믿으니까 인터파크도서 제대로 스위프트를 즐기는 방법 이 책은 전반적으로 하나의 메인 프로젝트를 완성해나가는 동시에 각 주제별로 소규모 앱을 만들면서 기능을 익히도록 구성되어 있습니다. 따라서 특정 주제나 book.interpark.com Selector objective-C에서 클래스 메소드의 이름을 가리키는 데 사용되는 참조 타입 Swift로 넘어오면서 구조체 형식으로 정의됨 #selector() 구문을 사용하여 해당 타입의 값 생성 가능 objective-C와의 호환성을 위해서 Selector 타입으로 전달한 메서드는 반드시 @objc 어트리뷰트 붙여야함. addTarget 등의 함수에서 많이 사용됨 import Foundation class A .. 2021. 4. 22. [Swift] Equatable Apple Developer Documentation developer.apple.com Equatable value 값으로 type이 같은지 비교할 수 있게 하는 프로토콜 이 프로토콜을 채택한 type의 인스턴스들은 '==' 로 비교가 가능하다. 자바의 Comparable과 유사한 역할 static func == (lhs: Self, rhs: Self) 함수를 정의해서 비교 기준을 정해줘야 한다. struct, enum 등 값 type들에서도 사용이 가능 struct에서 채택 시 == 함수를 꼭 정의할 필요가 없는데 이 때는 struct의 모든 프로퍼티가 같은지를 자동으로 비교해준다. import Foundation class A: Equatable { static func == (lhs: A, rhs.. 2021. 4. 21. [Swift] 요구 이니셜라이저 (Required Initializer) 스위프트 프로그래밍 국내도서 저자 : 야곰 출판 : 한빛미디어 2019.10.01 상세보기 요구 이니셜라이저 (Required Initializer) 클래스의 initializer 앞에 required 키워드를 붙이면 해당 클래스를 상속받는 자식 클래스에서는 반드시 해당 initializer를 구현해야한다. 자식 클래스에서 구현 할 땐 override 대신 required를 붙인다. convenience initializer도 required를 붙여서 요구 이니셜라이저로 만들 수 있다. required convenience 자식 클래스에서 부모 클래스의 initializer를 재정의함과 동시에 요구 이니셜라이저로 변경할 땐 required override 사용 2021. 3. 2. [Swift] 오류처리 (Error Handling) 스위프트 프로그래밍 국내도서 저자 : 야곰 출판 : 한빛미디어 2019.10.01 상세보기 오류처리 (Error Handling) 프로그램이 오류를 일으켰을 때 감지하고 회복하는 과정 오류 표현 Error 프로토콜을 준수하는 타입의 값으로 표현됨 주로 열거형으로 Error 프로토콜 채택 enum ComputerError: Error { case lackMemory case cpuOverwork case lackPower } 오류 포착 및 처리 1. 함수에서 발생한 오류를 해당 함수를 호출한 코드에 알리기 try 키워드로 던져진 오류를 받는다. try, try?, try! 존재 throws 키워드를 함수 매개변수 뒤에 사용해서 오류를 던진다. throw 키워드를 이용해서 함수내부에서 발생한 오류를 던진다... 2021. 1. 28. 이전 1 ··· 7 8 9 10 11 12 13 ··· 15 다음