[IT]/java

java.Encapsulation(캡슐화)

givemebro 2021. 2. 23. 15:41
반응형

Encapsulation(캡슐화) : 인터페이스와 구현부를 분리해서 정의

"public interface, private implementation"
인터페이스는 공개하고 구현부는 감춘다.
>응집도를 높이고 결합도를 낮춤
>사용자는 인터페이스만 알면 구현부를 몰라도 사용할 수 있음 > 생산성 향상
>구현부가 업데이트 되어도 외부 영향 최소화 > 유지 보수성 향상

Encapsulation적용의 장점

정보 은닉(information hiding)과 생산성 및 유지보수성의 향상
생산성 : 인터페이스만 알면 구현부를 몰라도 사용할 수 있음
유지보수성 : 구현부가 업데이트 되어도 인터페이스(소통부)가 유지되므로 외부 영향이 없음

인터페이스 : 외부와 소통하는 역할
구현부(implementation) : 해당 단위의 알고리즘

 

*API(Application Programming Interface) : 어플리케이션 개발에 필요한 사용법을 공개(구현부는 제외)
*정보 은닉(information hiding) : 외부에 정보를 공개하지 않고 감춘다.
*interface : 외부와 소통하는 역할
*implementation(구현부) : 해당 단위의 알고리즘

반응형