본문 바로가기
반응형

디자인패턴2

[디자인패턴] 컴포지트 패턴 컴포지트 패턴(Composite pattern)이란 객체들의 관계를 트리 구조로 구성하여 부분-전체 계층을 표현하는 패턴으로, 사용자가 단일 객체와 복합 객체 모두 동일하게 다루도록 한다. 처음 읽어보고 나의 반응... 아니 시방 이게 뭔소리여? 자 이제 이 컴포지트 패턴을 이해해보자 컴포지트 패턴과 가장 유사한 예시로는 윈도우 파일시스템을 떠올릴 수 있다. File 이라는게 있고 Directory라는게 있다. 여러분이 알다시피 디렉토리는 파일을 담는다. 그럼 아래와 같이 코드로 나타낼 수 있겠다 Class File{ public void operation(){} } class Directory{ public List lists; public void operation(){} public void add.. 2022. 7. 8.
[디자인패턴] 브릿지 패턴이란 브릿지패턴이란? 위키피디아에서 정의가 아래와 같이 나와있다 브리지 패턴(Bridge pattern)이란 구현부에서 추상층을 분리하여 각자 독립적으로 변형할 수 있게 하는 패턴이다. 처음보는 사람은 이게 ㅅㅂ 뭔소리임? 할 것이다. 그리고 아래와 같은 그림도 같이 나오는데 이건 또 뭔 그림인가 할 것이다. 아주 심플하게 설명하겠다. 문제상황부터 보자 사람(Human)이라는 인터페이스를 하나 만들었다. 그리고 이 사람은 라면을 끓일것이다. 라면을 끓이는데 필요하는것은 스프를 넣는다, 면을 넣는다 이 두가지 기능이 있다고 하자. 라면을 끓이는데 면을 먼저 넣는 사람이 있을것이고, 스프를 먼저 넣는 사람이 있을것이다. 자 모든 케이스를 구현하려면 Human을 몇번 상속해야 할 까? 기능의 가지의 수가 2개이므로.. 2022. 7. 4.
반응형