소프트웨어 디자인: 디커플링과 비용🖇️
객체의 동작을 변경할 때 변경하려는 모듈 밖에 분산된 여러 지점을 변경해야 한다는 사실을 알게 되고 디커플링을 하려고 할 때 몇 가지의 부담감이 생기게 됩니다. 1️⃣ 시간적/금전적 부담이 될 수 있습니다. 할 수는 있지만 지금 당장 시간을 낼 여유가 없습니다. 2️⃣ 관계적 스트레스가 될 수 있습니다. 팀이 지금 당장 감당할 수 없을수록 더 큰 스트레스입니다. 3️⃣ 어떻게 해야 할 지 모를 때 오는 멘탈붕괴😅 💡동작을 변경하지 않고 구조(모듈, 객체)를 인접하도록 코드의 순서를 다시 정리하면서 응집도를 높이자! 몇 가지 부담감이 있지만 구조의 변화에는 큰 부담감이 없습니다. 결합도가 있는 객체를 슬라이싱 후 청크로 만들고 청크들의 결속력을 높이면 행동 변화를 더 쉽게 만들 수 있습니다. 때로는 청크들의 높은 결합도가 더 높은 응집도를 만들어 낼 수도 있습니다!!😎