Chain of responsibility pattern. Behavioral Pattern 중 하나로 클라이언트의 요청이 들어왔을 때, 해당 요청을 어떤 서버가 처리할 수 있는지 사전에 모르는 상황에 사용하는 design pattern이다. 서버는 서버끼리 서로 chain 형식으로 연결되어 있다. 그래서 자신이 처리할 수 있는 요청이라면, 자신이 처리하고, 자신이 처리하지 못하는 요청이라면 연결되어 있는 다음 객체에게 문제를 넘김으로써 최종적으로 요청을 처리 할 수 있는 객체의 의해 처리가 가능하다 client의 요청을 처리할 수 있는 처리객체를 집합(Chain)으로 만들어 부여함으로 결합을 느슨하기 위해 만들어진 디자인 패턴이다. Goals of Chain of Responsibility Patter..
데이터 추상화에 대해서 알기 위해 먼저 추상화를 알 필요가 있다. 추상화(abstraction)는 여러가지 필요한 부분, 중요한 부분을 하나로 만드는 것을 말한다. 그 예로, 동그란 원에 숫자가 12개까지 있고 시침과 분침 초침이 있는 걸 무엇이라고 할까? 더보기 답은 '아날로그 시계' 이다. 추상화는 아주 중요한 부분을 통합하여 그 의미가 무엇을 의미하는지를 알 수 있게 해준다. 그렇다면 데이터를 추상화한다는 것은 무엇일까? 간단하게 말하자면, 여러 데이터를 하나로 묶어(단순화) 더 높은 단계로 정의(추상화)하는 것이다. 다시 말해 데이터가 직접적으로 정의된 것(물리적인 표현)을 의식하지 않고 추상화한 데이터형으로써 사용하는 것이다. 이러한 데이터의 물리적 표현과 그 기본 조작 절차를 묶어 정의하고 그..
Software Design Pattern 일반적인 의미에서의 Design Pattern이라고 말하며, 반복되는 문제에 대한 일반 솔루션 또는 재사용 가능한 solution 무한한 가능성을 창출하기 위해(또는 다양한 문제에 대한 수많은 해결책을 제공하기 위해) 다양한 방법으로 조정되고 결합될 수 있다. Software Design Pattern 다양한 응용 프로그램에 쉽게 적응할 수 있는 소프트웨어 설계의 반복되는 (많은 유사한) 문제에 대한 해결책에 대한 재사용 가능한 설명 Software Design Pattern 사용 목적 상대적으로 적은 수의 설계 패턴으로 경험을 문서화합니다. 효과가 입증된 설계의 재사용 지원 소프트웨어 설계자가 다양한 소프트웨어 설계에 대해 소통할 수 있는 공통 어휘를 제공한다..