✏️3.19 내부자 거래
내부자 거래
소프웨어 개발자는 모듈 사이에 벽을 두껍게 세우기를 좋아한다. 모듈 사이에 데이터 거래가 많으면 결합도가 높아지고, 일이 돌아가게 하려면 거래가 이뤄질 수 밖에 없지만 그 양을 최소로 줄이고 모두 투명하게 처리해야 한다.
📍 함수 옮기기, 필드 옮기기: 은밀하게 데이터를 주고 받는 모듈을 떼어놓아 사적으로 처리하는 부분을 줄인다.
📍 위임 숨기기: 여러 모듈이 같은 관심사를 공유한다면 공통 부분을 정식으로 처리하는 제 3의 모듈을 새로 만들거나, 위임숨기기를 이용하여 다른 모듈이 중간자 역할을 하게 만든다.
📍 서브클래스를 위임으로 바꾸기, 슈퍼클래스를 위임으로 바꾸기: 상속 구조에서 부모 자식 사이에 결택이 생길 경우, 부모 품을 떠나야 하는 경우 활용한다.
Last updated