본문 바로가기
  • (개인)정보보호/최신ICT 정보 공유 블로그

패턴3

13.3 Template Method 패턴 가. 배경 -알고리즘의 기본 구조가 유사할 때 적용 나. 사용사례 -기본 구조는 슈퍼 클래스에 정의하고, 구체적인 구현은 서브 클래스에서 재정의 다. 샘플 코드 및 클래스 다이어그램 카페인 음료 public abstract class CaffeineBeverage { final void prepareRecipe( ) { boilWater( ); brew( ); pourInCup( ); addCondiments( ); } abstract void brew( ); abstract void addCondiments( ); void boilWater( ) { } void pourInCup( ) { } } 커피 차 public class Coffee extends CaffeineBeverage { public v.. 2021. 12. 15.
13.2 Adaptor 패턴 가. 배경 -기존 클래스를 외부의 표준 클래스로 대치하는 것이 필요할 때 적용 나. 사용사례 -내부 기존 클래스를 외부 표준 클래스로 대치하기 위해 많은 수정 필요 -최소한의 수정을 통해 기존 인터페이스와 대치 인터페이스가 동일 기능 제공 다. 샘플 코드 및 클래스 다이어그램 기존 인터페이스 대체 인터페이스 public interface TaxIF { public void findTax( ); } public class Tax implements TaxIF { public void findTax( ){ } } public class TaxTest { static TaxIF t; public static void main(String[ ] args) { t = new Tax( ); t.findTax( );.. 2021. 12. 14.
13.1 Singleton 패턴 가. 배경 -특정 클래스가 단지 하나의 객체만을 생성하는 것을 보장하고 외부 객체에게 해당 객체에 대한 용이한 접근을 제공할 필요가 있을 때 적용 나. 사용사례 -시스템 정보를 저장하는 레지스트리 설정 객체 -복수 작업 관리 쓰레드 풀 객체 -데이터베이스 연결 커넥션 풀 객체 -시스템 주요 제어 객체 다. 샘플 코드 및 클래스 다이어그램 public class OrderController { private static OrderController oc; private OrderController( ) { }; public static OrderController getOC( ) { if (oc == null) { oc = new OrderController( ) ; } return oc; } } 2021. 12. 14.