소프트웨어 공부/프로그래밍

정보를 숨겨라.

야곰야곰+책벌레 2021. 4. 20. 12:48
728x90
반응형

추상화되어 있는 엔티티의 내부 정보는 누출하지 않는 것이 좋다.

 

추상화를 제어하는 호출 코드와 추상화의 임플리먼테이션 사이의 의존성을 최소화하기 위해서는 임플리먼테이션의 내부 데이터를 숨겨야 한다. 그렇지 않으면 호출 코드가 그 정보에 접근(심한 경우는 제어까지)하여 내부 정보가 누설되기 때문이다. 데이터 대신에 추상체(가능하면 도메인 추상화를 사용하고, 최소한 get/set 추상화 정도는 써야 한다)만을 노출하라. 정보를 숨기면 프로젝트의 비용, 스케줄 그리고 위험을 줄일 수 있다.

 

- 변경 내용이 내부에 국한된다 : 정보를 숨기면 변경 내용이 다른 부분에 영향을 주는 것을 줄일 수 있고, 그만큼 그 비용이 절약된다.

- 외부의 접근을 방어한다 : 코드의 관리 기능을 제한하여 버그나 외부 침입을 막는 효과가 있다.

 

728x90
반응형