목록Programing & Coding/Design Pattern (14)
S E P H ' S
생성(Creational) 패턴 생성 패턴은 인스턴스를 만드는 절차를 추상화하는 패턴이다. 생성 패턴에 속하는 패턴들은 객체를 생성, 합성하는 방법이나 객체의 표현 방법을 시스템과 분리한다. 생성 패턴은 시스템이 상속(Inheritance)보다 복합(composite)방법을 사용하는 방향으로 진화되어 가면서 더욱 중요해지고 있다. 생성 패턴에는 두 가지 중요한 이슈가 있다. 생성 패턴은 시스템이 어떤 Concrete Class를 사용하는지에 대한 정보를 캡슐화 한다. 생성 패턴은 이들 클래스의 인스턴스들이 어떻게 만들고 어떻게 결합하는지에 대한 부분을 완전히 가려준다. 요약하면, 생성 패턴을 이용하여 무엇이 생성되고, 누가 이것을 생성하고, 어떻게 생성되는지 언제 생성할 것인지 결정하는 것에 대한 유연성..
디자인 패턴은 객체지향적 프로그래밍을 위한 설계 기법 중 하나이다. '객체지향적'으로 프로그램을 설계한다는 것은 쉬운 일이 아니다. 지금 당장 요구되는 문제를 해결하면서 추후에 발생할 수 있는 문제나 추가적인 요구사항이 생겼을 때 유연하게 수용하고 변경할 수 있도록 설계되어야 하기 때문이다. 이를 고려하기 위해 SOLID 원칙이나 여러 객체지향적 소프트웨어 설계 방법론을 바탕으로 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 풀어나갈 것인지 정의해놓은 일종의 솔루션이 바로 디자인 패턴이다. 재사용이 가능한 설계는 선택하고, 재사용을 방해하는 설계는 배제하도록 도우며 이미 만든 시스템의 유지보수나 문서화도 개선할 수 있으며 클래스의 명세도 정확히 하고, 객체 간 상호작용 또는 설계 의도까지 명확히 ..