객체 풀링 ( Object Pooling ) 객체지향 프로그래밍이란 객체를 개발하고 객체 사이에 관계를 맺아 주는 것을 프로그래밍하는 것이라 할 수 있다. 객체지향으로 개발된 소프트웨어는 시작해서 종료될 때까지 다양한 객체를 생성하게 된다. 특히 EJB 기술을 사용하는 대형 웹 사이트에서는 순간적으로 수십, 수백 개의 객체가 생성되.. 프로그램 아키텍쳐/디자인패턴 2009.12.20
브릿지 패턴 ( Bridge Pattern ) 브릿지 패턴은 변경되는 요구 사항에 클래스의 확장을 하지 않고 쉽게 해결하는 방법을 제공한다. 패턴에 대한 설명은 추상화 개념과 구현을 분리시켜 독립적으로 변화할 수 있도록 파생 클래스의 폭발적인 증가 없이 다양한 구현이 필요한 경우 사용하는 패턴이라고 나온다. 이 말은 간단하게 설명.. 프로그램 아키텍쳐/디자인패턴 2009.10.30
프록시 패턴 ( Proxy Pattern ) 프록시는 대리 객체를 말한다. 어떤 작업을 하는 클래스가 있다고 가정하면 그 클래스 안에는 처리과정이 복잡하고 시스템의 리소스를 많이 잡아 먹는 메소드도 있고, 간단하게 처리할 수 있는 메소드도 있을 것이다. 이때 대리 클래스를 두어 간단한 처리는 대리가 처리하고 복잡하고 리소스를 많이 .. 프로그램 아키텍쳐/디자인패턴 2009.10.30
컴포지트 패턴 ( Composite Pattern ) 컴포지트 패턴은 객체들의 관계를 트리 구조로 구성하여 전체-부분 계층을 표현한는 패턴이다. 자바 AWT 의 컨테이너와 같은 패턴이다. 최상위 인터페이스 클래스인 Component는 클래스들의 묶음을 나타내기 위함이다. Component 클래스에 확장된 클래스들은 컴포지트 패턴이 적용된 Composite 클래스에서 계.. 프로그램 아키텍쳐/디자인패턴 2009.10.30
빌더(Builder) 패턴 빌더 패턴은 추상팩토리와 팩토리 메소드를 혼합시킨 방법으로 팩토리가 데이터 가공, 추상 팩토리는 데이터를 추상화 시킨 것이며 이 둘을 합친 것이 빌더 패턴이다. 팩토리 메소드 패턴은 아래 처럼 인자를 통한 객체 생성을 정의한다면, Factory factory = new Factory("한국"); 추상 팩토리 패턴은 객체를 .. 프로그램 아키텍쳐/디자인패턴 2009.10.29
추상 팩토리 패턴 ( The Abstract Factory pattern ) 추상 팩토리 패턴은 팩토리 패턴보다 한 단계 높은 추상성을 부여한다. 추상 팩토리 패턴은 요청에 따라 여러개의 다른 종류의 객체를 반환한다. 보통 GUI 클래스들이 추상 팩토리 패턴으로 구성되어 있다. 상황에 따른 필요한 객체가 다른 경우 추상 팩토리 패턴은 상황에 맞게 유연하게 객체를 생성.. 프로그램 아키텍쳐/디자인패턴 2009.10.28
팩토리 메소드 ( The Factory Method ) 팩토리 패턴은 인자를 통한 유연한 객체 생성 방법을 제공한다. 하는 일은 같지만 처리하는 방법이 다른 유사한 객체들이 필요한 경우 팩토리 패턴은 유연한 접근 방법을 제공한다. 예를 들어 이름을 성과 이름으로 구별하여 출력하고자 하는 경우, 성+이름 으로 데이터가 입력될 경우 처리하는 클래.. 프로그램 아키텍쳐/디자인패턴 2009.10.28
CoR 패턴 ( Chain of Responsibility Pattern ) 객체에게 보낸 메세지가 내부적으로 연결된 다른 객체들에게 자동으로 전달되어, 객체들 중 해당 조건에 만족하는 객체가 실행을 담당하는 패턴을 말한다. 객체들간의 의존성을 존더 약화 시키는 효과를 가진다. 즉, 메시지가 전달되면 해당 객체만 일을 하고 나머지 객체는 아무것도 하지 않는 패턴.. 프로그램 아키텍쳐/디자인패턴 2009.09.14
디자인 패턴 종류의 설명 패턴을 구분할 때는 목적에 따라 구분하는 데 GoF(Gang of Four)가 정의한 방법으로, 유연한 방법으로 객체의 집합을 생성하는 패턴(생성패턴), uniform interface를 위하여 관계 잇는 객체의 모임을 표현하는 패턴(구조패턴), 객체의 모임 사이에 일어나는 행위를 뽑아 놓은 패턴(행위패턴).. 프로그램 아키텍쳐/디자인패턴 2009.08.27
디자인 패턴(Design Patterns)이란 디자인 패턴은 프로그램 개발에 자주 나타나는 과제를 해결하기 위한 방법 중 하나로, 과거의 소프트웨어 개발 과정에서 발견된 설계의 노하우를 축적하여 이름을 붙여, 이후에 재이용하기 좋은 형태로 특정의 규약을 묶어서 정리한 것이다. 알고리즘과 같이 프로그램 코드로 바.. 프로그램 아키텍쳐/디자인패턴 2009.08.27