본문 바로가기

안전성2

구조 패턴 - 복합체(Composite) - 참조: GoF의 디자인 패턴 - Composite pattern 안전성: https://en.wikipedia.org/wiki/Composite_pattern#Java - 복합체(Composite) 패턴 부분과 전체의 계층을 표현하기 위해 객체들을 모아 트리구조를 형성한다. 개별객체와 복합객체를 동일하게 다룰 수 있도록 한다. - 시나리오 PPT 문서를 작성하다보면 작은 요소들을(예를 들면 선, 텍스트, 도형들) 하나의 큰 요소로 만들고 난 후, 이를 수월하게 다루기 위해서 그룹화(Grouping)를 할때가 있다. 그룹화를 하면 한 번의 클릭으로 여러 요소들을 한꺼번에 선택하여 작업이 훨씬 수월하다. 작은 요소들을 클래스로 이 작은 요소들이 모인것을 컨테이너라고 할 때, 이를 코드로 구현하려면 해당 .. 2021. 5. 6.
컴포넌트 결합 - SAP (안정된 추상화 원칙) - 이 글은 로버트 C.마틴의 Clean Architecture를 기반으로 작성되었습니다. (가능하면 책을 읽어보는것을 추천한다.) - 고수준의 정책 컴포넌트는 안정된 정도만큼만 추상화 되어야 한다. 시스템에서 업무규칙은 안정된 (I = 0, 즉 불안정성이 작은) 컴포넌트여야 한다. (I 개념을 모른다면 ocwokocw.tistory.com/37 글을 먼저 숙지해야 한다.) 업무규칙은 고수준의 정책이기 때문이다. 반면 불안정한(I = 1) 컴포넌트는 변동성이 큰 컴포넌트여야 한다. 이 문장만 읽었을 때 이상함을 느껴야 한다. "업무규칙은 안정된 컴포넌트 여야 한다"는 말이 당연한 얘기인가? 앞서 SDP 원칙에서 안정된 컴포넌트는 변경을 하기가 어렵다고 하였다. 그런데 SOLID 원칙에서는 고수준의 시스템.. 2021. 2. 10.