IOS에서 익스텐션은 기존의 클래스, 구조체, 열거형, 프로토콜 등에 기능을 추가하는 방법입니다.
익스텐션은 기존 타입의 정의를 수정하지 않고도 새로운 기능을 추가하거나 기존 기능을 확장할 수 있습니다.
// 기존의 Int 타입에 isEven 프로퍼티를 추가하는 익스텐션
extension Int {
var isEven: Bool {
return self % 2 == 0
}
func squared() -> Int {
return self * self
} }
let number = 5
print(number.isEven) // false
print(number.squared()) // 25
익스텐션이라는 새 파일을 만듭니다.
UIViewController의 기능을 확장하고 싶을 경우에 UIkit을 import 해줍니다.
익스텐션 안에 간단한 함수를 구현했습니다.
원래대로 다른 파일에 있는 함수를 가져오기 위해서는 fileprivate를 해줘야하지만, 익스텐션을 했기 때문에 바로 함수로 사용가능합니다.
참고(출처) : 개발하는 정대리
저도 개발자인데 같이 교류 많이 해봐요 ㅎㅎ! 서로 화이팅합시다!