티스토리 뷰
객체지향 프로그래밍에서 캡슐화와 은닉화가 중요
외부에서 접근하면 안 되는 코드가 있기 때문
*모듈 - 배포 단위 (프레임워크, 라이브러리, 애플리케이션 ...)
모듈과 소스파일 (Modules and Source Files)
Swift의 접근제어는 모듈과 소스파일에 기반을 두고 있습니다. 모듈은 코드를 배포하는 단일 단위로 하나의 프레임워크나 앱이 이 단위로 배포되고 다른 모듈에서 Swift의 import키워드를 사용해 import될 수 있습니다. Xcode의 각 빌드 타겟은 Swift에서 분리된 단일 모듈로 취급됩니다. 소스파일은 모듈안에 있는 소스파일을 의미합니다. 각 소스파일에 여러 특정 타입을 선언해 사용할 수 있습니다.
접근수준
타입(클래스, 구조체, 열거형 등)에 접근수준 지정
타입 내부의 프로퍼티, 메서드, 이니셜라이저, 서브스크립트에 접근수준 지정
open, public, internal, fileprivate, private
open
다른 모듈에서도 부모클래스로 사용하겠다는 목적 (클래스에서만 사용)
모듈 밖에서도 상속, 재정의가 가능
public
프레임워크에서 외부와 연결될 인터페이스 구현에 많이 쓰임
예 public struct Bool {}
internal
기본 접근 수준
fileprivate
소스파일 내부에서만 사용
private
구현 범위 내
참고 도서
m.yes24.com/Goods/Detail/78907450
'Swift' 카테고리의 다른 글
[Swift] static 타입 프로퍼티, 타입 메서드 (0) | 2021.05.06 |
---|---|
[Swift] 상속 (0) | 2021.05.01 |
[Swift] 구조체와 클래스 Struct and Class (0) | 2021.05.01 |
[Swift] Swift 언어의 특징 (0) | 2021.05.01 |
[Swift] Delegation이란? (0) | 2021.04.09 |
댓글
공지사항