iOS Swift Extension

운영 체제: macOS Monterey 12.3.1
사용 버전: Xcode 13.3.1, SwiftUI

iOS Swift Extension을 알아보겠습니다.


Extension은 기존에 있는 Protocol, Class, Struct 등을 건들지 않고 기능을 추가하는 것을 말합니다.
우리가 수정할 수 없는 무엇인가 있다면 거기에 우리의 기능을 추가할 수 있으니 좋네요.

String은 Swift에 정의되어 있는 struct입니다. 우리가 그 구조를 바꾸거나 건들지는 않습니다.
하지만 뭔가 String에 필요한 기능을 추가하고 싶다 하면 이렇게 하면 됩니다.




한 번 써볼까요?






기존에 있는 것도 덮어쓸 수 있습니다.

8 번째 줄의 count를 덮어 씌워 봤습니다.





Struct나 Class의 init 함수도 덮어 씌울 수 있습니다.


프로토콜을 Extension 해서 사용하면 프로토콜을 상속하는 모든 곳에 적용시킬 수 있습니다.

아래의 eat()은 동일합니다.





이것을 Extension으로 변경하면 다음과 같이 나타냅니다.






끝.


카테고리: iOS

댓글

이 블로그의 인기 게시물

Python urllib.parse.quote()

Python OpenCV 빈 화면 만들기

tensorflow tf.random.uniform()

Android Notification with Full Screen

KiCad 시작하기 2 (PCB 만들기)

Android Minimum touch target size

Python bs4.SoupStrainer()

KiCad 시작하기 4 (기존 회로도 수정 및 추가)

음악 총보(Score), 파트보(Part)

tensorflow tf.expand_dims()