본문 바로가기

CS(Computer Science)/디자인 패턴

행동 패턴(Behavioral patterns)

 

 

Strategy(스트레티지) 패턴

Strategy(스트레티지) : ex - interface를 상속받은 클래스들에서 각각 다르게 overriding하여, 같은 interface의 메소드를 호출해도 객체마다 다르게 동작

 

 


State (스테이트) 패턴 

State (스테이트): Strategy와 비슷하지만 아래와 같이 다름

                -Strategy 패턴이 지정된 특정 메소드가 모듈화된 모드에 따라 다르게 실행되도록 하는 거라면

                  State 패턴은 그 메소드가 실행될 때 모드도 전환되는 것

                -TV가 꺼져 있을 대 누르면 켜지고, 켜져있을 때 누르면 꺼지는 방식 

 

 


Command 패턴

command 패턴 : Strategy와 역시 비슷하지만 아래와 같이 다름

                    - Strategy는 같은 일을 하되 그 알고리즘이나 방식이 갈아끼워지는거라면

                     command패턴은 그 하는 일 자체가 다른 것임

 


Template-method 패턴

template-method 패턴 : 추상 클래스에서 큰 절차 틀을 정함 (ex - 음식 만드는 과정)

                                그리고 subclass에서 각자 세부 메소드들을 overriding 해서 구현 

 

 

 

 


Mediator 패턴

Mediator  : mode를 변경해야 할 일(이벤트)이 있을때 일일이 연락할 필요없이 중재 담당에게 지시하면 됨

 


Observer 패턴 

observer : 어떤 객체의 상태가 변할 때 그와 연관된 객체 들에게 알림을 보내는 디자인 패턴


Visitor 패턴

 

Visitor : 실제 로직을 가지고 있는 객체(Visitor)가 로직을 적용할 객체(Element) 방문하면서 실행하는 패턴

반응형

'CS(Computer Science) > 디자인 패턴' 카테고리의 다른 글

구조 패턴(Structual patterns)  (0) 2020.09.06
생성 패턴(Creational patterns)  (0) 2020.09.05