"정보은닉"의 두 판 사이의 차이
(새 문서: '''정보 은닉'''(Information Hiding)이란 다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통해 접근을 허용하는 것으로, 클래스 외부에서...) |
(→목적) |
||
4번째 줄: | 4번째 줄: | ||
== 목적 == | == 목적 == | ||
+ | 정보 은닉(Information hiding)의 목적 첫번째, 기능의 교체나 변경이 쉽도록 한다. 코드가 구체적인 것들 예를들면 타입이나 메소드, 구현등에 의존하는 것을 막아줌으로써 객체 간의 구체적인 결합도를 약화시킨다. 결합도가 약화되면 기능을 변경하거나 다른 기능으로 교체하는게 쉬워진다. 두번째, 동일한 타입의 다른 구현 객체들을 교체함으로써 동적 기능 변경이 가능하다. 세번째, 연동할 구체적인 구현이 없는 상태 즉, 인터페이스만으로도 정확한 연동 코드의 생성이 가능하다. <ref name="Effective Programming">〈[https://effectiveprogramming.tistory.com/entry/%EA%B0%9D%EC%B2%B4%EC%A7%80%ED%96%A5-%EC%A0%95%EB%B3%B4-%EC%9D%80%EB%8B%89information-hiding%EC%97%90-%EB%8C%80%ED%95%9C-%EC%98%AC%EB%B0%94%EB%A5%B8-%EC%9D%B4%ED%95%B4 객체지향의 올바른 이해: 5. 정보 은닉(information hiding)]〉, 《개인사이트》, 2016-09-24</ref> | ||
== 특징 == | == 특징 == |
2020년 8월 11일 (화) 17:00 판
정보 은닉(Information Hiding)이란 다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통해 접근을 허용하는 것으로, 클래스 외부에서 특정 정보에 접근을 막는다는 의미이다. [1]
개요
목적
정보 은닉(Information hiding)의 목적 첫번째, 기능의 교체나 변경이 쉽도록 한다. 코드가 구체적인 것들 예를들면 타입이나 메소드, 구현등에 의존하는 것을 막아줌으로써 객체 간의 구체적인 결합도를 약화시킨다. 결합도가 약화되면 기능을 변경하거나 다른 기능으로 교체하는게 쉬워진다. 두번째, 동일한 타입의 다른 구현 객체들을 교체함으로써 동적 기능 변경이 가능하다. 세번째, 연동할 구체적인 구현이 없는 상태 즉, 인터페이스만으로도 정확한 연동 코드의 생성이 가능하다. [2]
특징
장단점
- 장점
- 단점
각주
- ↑ 〈JAVA PROGRAMMING-객체지향 특징(캡슐화, 정보은닉)〉, 《개인블로그》, 2014-05-01
- ↑ 〈객체지향의 올바른 이해: 5. 정보 은닉(information hiding)〉, 《개인사이트》, 2016-09-24
참고자료
- 개발이 하고 싶어요, 〈오버로딩(Overloading) 오버라이딩(Overriding)〉, 2013-12-09