본문 바로가기
iOS/Swift

일반화, 추상화, 캡슐화, 은닉화, 암호화

by Jiseong 2022. 2. 12.

일반화

서로 다른 개체들로부터 공통된 개념을 추출하는 것

추상화

개체들로부터 필요한(중요한) 정보, 포인트만을 추려내는 것

캡슐화

실제로 구현되는 부분을 외부에 드러나지 않도록 캡슐(Struct, Class)로 감싸 이용방법만 사용자(외부 코드)에게 알려주는 것

은닉화

내부 데이터, 내부 연산, 기능들을 외부에서 접근치 못하도록 숨기는 것 (접근제어자)

암호화

암호화 알고리즘으로 값을 조작하여 본래 값을 알아볼 수 없도록 하는 것, 데이터를 알아보기 위해 복호화가 필요

정리

내부 부품(프로퍼티)이나, 기능(메소드)을 특정 기계(타입)으로 한번 감쌈으로써(캡슐화), 기본적으로 캡슐화와 은닉화가 함께 진행되는 줄 알았지만, 내부 부품, 기능들에 대한 외부 조작, 간섭을 방지하기 위해 내부 부품, 기능들에 추가적으로 은닉화(접근 제어)가 적용이 되는 것으로 파악했다.

'iOS > Swift' 카테고리의 다른 글

Swift) Singleton  (0) 2022.02.12
Swift) KVO(Key-Value-Observing)  (0) 2022.02.12
Swift) return에 대한 의문  (0) 2022.02.12
Swift) Switch vs If else  (0) 2022.02.12
Swift) Error Handling  (0) 2022.02.12

댓글