본문 바로가기

응집도

[오브젝트] 5장 책임 할당하기 안녕하세요 남갯입니다 오늘은 오브젝트 책임 할당하기 부분입니다. 일전에 봤던 코드들 4장에서 데이터 중심의 설계를 통해 작성한 코드가 있었습니다. 책임에 중점을 맞추지 않다보니 결합도가 올라가고 캡슐화가 잘 안되다보니 응집도도 내려가는 결과가 발생했습니다. 2장에서 책임 중심의 코드와 함께 4장에서 데이터 중심의 코드도 봤습니다. 이번에는 책임할당하기 편을 리뷰해보려고 합니다. 책임의 할당이란? 책임에 초점을 맞춰 설계할때 가장 큰 어려움은 어떤 객체에 어떤 책임을 할당할지 결정하기 어렵다는점입니다. 저도 객체지향.. 객체지향.. 어떤 책임을 할당할지 결정하기 쉽지 않았습니다. 책임의 할당과정은 트레이드 오프활동이다. GRASP 패턴 GRASP 패턴은 책임할당의 어려움을 해결하기 위한 답을 제시해줄것이다..
[오브젝트] 4장 설계 품질과 트레이드오프 안녕하세요 남갯입니다 오늘은 4장 설계품질과 트레이드 오프에 대해 포스팅 해보려고합니다. - 역할 책임 협력중 가장 중요한것은 책임이다. 책임이 객체지향 어플리케이션 전체의 품질을 결정하는것이다. - 객체지향의 첫번째 관점은 핵심은 책임이다란것, 두번째 관점은 응집도와 결합도 같은 설계품질과 연관되어있다. - 훌륭한 설계란 적절한 비용안에서 쉽게 변경 할 수 있는 응집도 높고 결합도가 낮은 요소로 구성되어있는것 - 객체를 단순하 데이터 집합으로 바라보는 시각은 객체 내부구현을 퍼블릭 인터페이스에 노출시키는 결과를 낳기때문에설계가 변경에 취약해진다. 하지만 이런 문제를 피할 수 있는 방법은 객체에 초점을 맞추는것 객체지향 설계에서 두가지 방법을 이용해 객체를 분할 가능하다. 상태분할의 중심축 , 책임분할의..