Jaebi의 Binary는 호남선

Swift - 문법 (접근 제어) 본문

Swift

Swift - 문법 (접근 제어)

jaebijae 2024. 7. 20. 04:06

목차

    접근 제어

    • Swift의 접근제어 → 모듈과 소스파일을 기반
      • 모듈: 배포할 코드의 묶음 단위 (프레임워크, 라이브러리, 어플리케이션), import를 사용하여 불러옴
    • 소스파일 → 하나의 Swift 소스 코드 파일
     
     
    Keyword
    접근도
    범위 비고
    open
    높음

    ↕︎
    낮음
    모듈 외부까지 클래스에서만 사용 가능
    public
    internal 모듈 내부
    filePrivate
    private 기능 정의 내부
    • open
      • 클래스와 클래스 멤버에서만 사용
      • 정의된 모듈 밖에서도 상속 가능
      • 다른 모듈에서도 부모 클래스로 사용할려는 목적으로 설계하면 open 사용
    • public
      • 소스파일 / 소스에 속해있는 모듈, 그 모듈을 가져다 쓰는 모듈 등에서 사용
      • 주로 프레임워크에서 외부와 연결될 인터페이스를 구현하는데 쓰임
      • 프레임워크를 만들때는 API로 사용할 기능을 public로 지정, 외의 요소는 internal 이나 private으로 설정
    • internal
      • 소스파일이 속해 있는 모듈 어디서든 사용 가능 (기본 접근 수준)
    • filePrivate: 같은 파일 어떤 코드에서도 접근 가능
      • 구현된 소스파일 내부에서만 사용
    • private: 같은 파일 내부에 다른 타입 코드가 있어도 접근 불가능
      • 구현된 소스파일 내부에서만 사용, 구현한 타입이나 기능 안이어야 함
      • extension에서는 private 요소 접근 가능
     

    'Swift' 카테고리의 다른 글

    ARC (Automatic Reference Counting)  (0) 2024.07.20
    Swift - Memory 기초  (0) 2024.07.20
    Swift Local Network Connection  (0) 2024.06.19
    Swift Wi-Fi Configuration  (0) 2024.06.19
    WWDC 2024 - WeatherKit Sample App  (0) 2024.06.13