[Swift/iOS] Extension(확장)

CHO·2023년 2월 18일
0

[Swift] 공부하기

목록 보기
7/13

오늘은 확장에 대한 공부를 해보겠돠~!

Object-C에서는 익명 카테고리라고 생각하면 된다고 한다!

항상 코드를 짜면서 왜 extension을 쓰는지? 궁금했습니다! 그래서 정리하고 공부해보겠습니다~

  1. 익스텐션 왜 사용함?
    : 외부 라이브러리나 프레임워크를 가져다 사용할 경우 원본 소스 수정 못한다. 외부에서 가져온 타입에 내가 원하는 기능을 추가하고자 할 때 익스텐션을 사용한다
  1. 확장의 개념!
    : 기존 class, 구조체, enum(열거형) 타입에 새로운 Property, Method, Initializer을 추가하는 것
    : 원본타입에 접근하지 못하는 타입들도 확장해서 사용할 수 있다
  1. extensioin으로 확장할 수 있는 기능
    1) 연산 타입 프로퍼티 / 연산 인스턴스 프로퍼티
    2) 타입 메소드 / 인스턴스 메소드
    3) 이니셜라이저
    4) 서브스크립트
    5) 중첩타입
    6) 특정 프로토콜을 준수할 수 있도록 기능 추가

단, 기존에 존재하는 기능을 재정의(override)할 수 없다

  1. extension 사용 반경
    : delegate(델리게이트) - 어떤 객체가 해야하는 일을 부분적으로 확장해서 대신 처리한다
    :

참고자료
https://www.youtube.com/watch?v=VRkCPbN_XPs&ab_channel=yagom
https://babbab2.tistory.com/124
https://aiden-ios.tistory.com/13

profile
매일 개념 익히고 적용합니다

0개의 댓글