캡슐화
- 실제로 구현되는 부분을 외부에 드러나지 않도록
캡슐로 감싸 이용방법만을 알려주는것
- 은닉화또한 캡슐화의 한부분이다
캡슐화를 사용하면 블랙박스기능을 구현할수 있다.
해당코드를 다른사람이 그것의 작동 방법을 알 필요가 없게 한다는 뜻이다.
개발자는 해당 함수에 알맞는 파라미터만 넣으면
원하는 결과만 리턴 받으면 되는 것이지
굳이 해당 함수의 알고리즘까지는 알 필요가 없기 떄문이다.
이처럼 실제로 구현되는 부분을 외부에 드러나지 않도록
캡슐로 감싸 이용방법만을 알려주는것이 캡슐화의 중요 컨셉이다.
그리고, 이 캡슐화(encapsulration) 과정에서
데이터들과, 여러 로직들이 은닉이 된다.
말그래도 캡슐(encapsulration)로 감싸 숨기(은닉화 , hiding)는 것이다.
*은닉화
1.은닉이란 내부 데이터, 내부 연산을 외부에서 접근하지 못하도록
은닉(hiding) 혹은 격리(isolation)시키는 것을 의미한다
2.변수에 접근지정자를 private 로 지정한다
3.setter , getter 를 사용해 변수의 접근,제어한다
은닉화는 캡슐화에 비해 비교적 구체적인 개념이다.
은닉화는 캡슐화의 한 개념으로 객체 외부에서 객체내의 자료로의 접근을 제한하고 데이터를 수정,조작하는 동작은 내부에 두고
접근(getter),설정(setter)하는 메소드로 결과만 받는것이다.
이렇게 되면 외부에서는 내부적인 움직임을 알수가 없으며 데이터에 어떤값이 있는지 또는 어떤 변화가 일어나는지 알수없다.
단지 데이터의 접근을 메서드(setter , getter)를 통해 결과만 받을뿐이다
이런한 것을 은닉화라 한다
은닉화와 캡슐화의 차이
1.은닉화는 중요사항이(변수던 메소드던간에)밖으로 드러나지
않도록 꼭꼭 감추는것
2.캡슐화는 중요사항을 감춘 상태에서 외부에 그것을 사용할수 있는 방법을 설정하고 외부와 직접적으로 의사소통을 의미 한다
한마디로 맛집에서 비밀소스의 제조법을 안알려주나
따로 판매는 하는 느낌이다...
'Hoons.Net > C#' 카테고리의 다른 글
| 캠퍼스 시삽 과제 2-3) 정렬기능 (0) | 2012.08.07 |
|---|---|
| 캠퍼스 시삽 과제 2-2) 로또 추출기 (0) | 2012.08.07 |
| 캠퍼스 시삽 과제 2-1) 배열과 컬렉션의 차이 (0) | 2012.08.07 |
| 캠퍼스 시삽 과제 1-1) 다향성 (0) | 2012.08.06 |
| 캠퍼스 시삽 과제 1-1) 상속 (0) | 2012.08.06 |