Chain of Responsibility Pattern: 객체 간의 연쇄적인 처리를 위한 디자인 패턴
Chain of Responsibility Pattern란? Chain of Responsibility Pattern은 객체지향 디자인 패턴 중 하나로, 객체 간의 연쇄적인 처리를 위해 사용됩니다. 이 패턴은 하나의 요청에 대해 적합한 객체를 찾을 때까지 객체들의 연쇄를 따라가는 방식으로 처리를 진행합니다. 이를 통해 요청에 대한 처리를 분산시키고, 객체들의 결합도를 낮추는 효과를 가져올 수 있습니다. 객체 간의 연쇄적인 처리를 위한 디자인 패턴 Chain of Responsibility Pattern을 사용하기 위해서는 처리 가능한 객체들을 연쇄적으로 연결하는 구조를 가지고 있어야 합니다. 이 구조는 일반적으로 LinkedList나 Tree 구조를 사용합니다. 각 객체는 자신이 처리할 수 있는 요청인지 판별하는 메소드를 구현하고, 처리할 수 있다면 요청을 처리하고 그렇지 않다면 다음 객체에게 요청을 전달합니다. 이 과정은 연쇄적으로 진행되며, 요청이 처리될 때까지 반복됩니다. Java 코드 예시를 통해 이 과정을 살펴보겠습니다. 다음은 Chain of Responsibility Pattern을 사용하여 처리 가능한 객체들을 연결하는 예시입니다. public abstract class Handler { protected Handler nextHandler; public void setNextHandler(Handler nextHandler) { this.nextHandler = nextHandler; } public abstract void handleRequest(Request request);}public class ConcreteHandler1 extends Handler { @Override public void handleRequest(Request request) { if (request.getType() == RequestType.TYPE1) { System.out.pri...