디자인: 6개의 글
행동패턴 목록 책임연쇄 패턴 (Chan of Responsibility Pattern) 커맨드 패턴 (Command Pattern) 해석자 패턴 (Interpreter Pattern) 반복자 패턴 (Iterator Pattern) 중재자 패턴 (Mediator Pattern) 메멘토 패턴 (Memento Pattern) 관찰자 패턴 (Observer Pattern) 상태 패턴 (State Pattern) 전략 패턴 (Strategy Pattern) 템플릿 패턴 (Template Pattern) 여기서 초점을 둘 부분은 final 로 만들어둔 변경 불가능한 프로세스 함수인 play() 이다. 고정되어있는 순서로 프로세스를 적용하려면 아래와 같이 final로 지정해 두는 것이 훨씬 효과적일 것 같다. 또한 ..
행동패턴 목록 책임연쇄 패턴 (Chan of Responsibility Pattern) 커맨드 패턴 (Command Pattern) 해석자 패턴 (Interpreter Pattern) 반복자 패턴 (Iterator Pattern) 중재자 패턴 (Mediator Pattern) 메멘토 패턴 (Memento Pattern) 관찰자 패턴 (Observer Pattern) 상태 패턴 (State Pattern) 전략 패턴 (Strategy Pattern) 템플릿 패턴 (Template Pattern) 클래스의 수를 상관하지 않고 단위기능의 처리를 테스트 할 때 쓰면 좋을 것 같기도 하다. 각 기능마다 레고블록처럼 갈아끼울 수 있기 때문에 초기에 사용하면 유용한 기능인 것 같다. 장점 - 서브클래싱 대신 사용할 ..
행동패턴 목록 책임연쇄 패턴 (Chan of Responsibility Pattern) 커맨드 패턴 (Command Pattern) 해석자 패턴 (Interpreter Pattern) 반복자 패턴 (Iterator Pattern) 중재자 패턴 (Mediator Pattern) 메멘토 패턴 (Memento Pattern) 관찰자 패턴 (Observer Pattern) 상태 패턴 (State Pattern) 전략 패턴 (Strategy Pattern) 템플릿 패턴 (Template Pattern) 객체의 동작이 상태에 따라 변하는 경우에 사용한다. 옵저버패턴과의 차이를 생각해보고 적재적소에 사용해야 할 것 같다. 관찰자 패턴은 상태가 변경시에 그때그때 알려주는 패턴이고 상태패턴은 상태에 따라 처리를 다르게 ..
행동패턴 목록 책임연쇄 패턴 (Chan of Responsibility Pattern) 커맨드 패턴 (Command Pattern) 해석자 패턴 (Interpreter Pattern) 반복자 패턴 (Iterator Pattern) 중재자 패턴 (Mediator Pattern) 메멘토 패턴 (Memento Pattern) 관찰자 패턴 (Observer Pattern) 상태 패턴 (State Pattern) 전략 패턴 (Strategy Pattern) 템플릿 패턴 (Template Pattern) 어떤 객체의 상태가 변함에 따라 원하는 동작을 할 필요가 있는 경우에 사용하면 좋을 것 같다. 장점 - 객체와 관찰자 간의 연결을 설명합니다. - 브로드 캐스트 유형 통신을 지원합니다. 사용시기 - 한 객체의 상태..
행동패턴 목록 책임연쇄 패턴 (Chan of Responsibility Pattern) 커맨드 패턴 (Command Pattern) 해석자 패턴 (Interpreter Pattern) 반복자 패턴 (Iterator Pattern) 중재자 패턴 (Mediator Pattern) 메멘토 패턴 (Memento Pattern) 관찰자 패턴 (Observer Pattern) 상태 패턴 (State Pattern) 전략 패턴 (Strategy Pattern) 템플릿 패턴 (Template Pattern) 상태를 저장하고 복원하는 기능이 필요한 경우에 사용하면 유용할 듯 하다. 장점 - 캡슐화 경계를 유지합니다. - 발신자를 단순화합니다. 사용시기 - 실행 취소 작업을 구현하는데에 쓰입니다. - 대부분의 소프트웨어에..
행동패턴 목록 책임연쇄 패턴 (Chan of Responsibility Pattern) 커맨드 패턴 (Command Pattern) 해석자 패턴 (Interpreter Pattern) 반복자 패턴 (Iterator Pattern) 중재자 패턴 (Mediator Pattern) 메멘토 패턴 (Memento Pattern) 관찰자 패턴 (Observer Pattern) 상태 패턴 (State Pattern) 전략 패턴 (Strategy Pattern) 템플릿 패턴 (Template Pattern) 메시지 기반으로 무언가를 구현하려고 할 때 사용하면 유용할 것 같다. 특히 채팅관련 기능은 대부분의 서비스에 들어가기 때문에 꼭 사용되어야 할 것 같다. 장점 - 클래스 수를 분리합니다. - 객체 프로토콜을 단순화..