전체 글 473

퍼사드 패턴

퍼사드 패턴의 정의 : 어떤 서브시스템의 일련의 인터페이스에 대한 통합된 인터페이스를 제공한다. 퍼사드에서 고수준 인터페이스를 정의하기 때문에 서브시스템을 더 쉽게 사용할 수 있다. 퍼사드 패턴은 디자인 원칙의 최소지식원칙 을 준수한 패턴으로 볼수 있다. 퍼사드는 클라이언트를 복잡한 서브시스템과 분리시켜주는 역할을 한다. 퍼사드 패턴에서는 서브시스템을 가지고 퍼사드를 만들고, 실제 작업은 서브클래스에 맡긴다.

어댑터 패턴

public interface Duck(){ public void quack(); public void fly(); } public class MallardDuck implements Duck{ public void quack(){ System.out.println("Quack"); } public void fly(){ System.out.println("I'm flying"); } } public interface Turkey{ public void gobble(); //칠면조는 꽥꽥거리지 않습니다. 골골거리는 소리를 내죠. public void fly(); } public class WildTurkey implements Turkey{ public void gobble(){ System.out.pri..

새벽 1시 일기...

흠.. 오늘은 지출이 좀 있었다. 방값 35 책값 4.8 헬스 3개월 등록 20 total : 60 저번 헤드퍼스트 디자인패턴을 구입하여 공부 한 후 , 안그래도 객체지향 설계에 높은 관심을 가지고 있던 나는 디자인패턴을 공부함으로써 한 단계 높은 캡슐화의 맛을 보았고, 더욱 더 객체지향적인 설계와 디자인에 대한 지식을 갈구하고 학구열에 불타올랐다. 오늘 비트 컴퓨터 학원 서점에 가서 헤드퍼스트 세상을 설계하는 객체지향 방법론과 헤드퍼스트 HTML with css & xhtml 을 구입하였다. 열심히 공부하고 헬스도 열심히 해서 몸매도 예쁘게 만들고 .. 잠시도 헛되이 시간을 보내지 않겠다 .. 헛되이 보낸 시간은 지난 25년으로 충분하다. 더이상은 안된다. 한우물만 판다. JAVA JAVA Archit..

일기 2007.07.24

싱글톤 패턴 II

싱글톤 패턴의 정의 - 싱글톤 패턴은 해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴입니다. * 고전적인 싱글톤 패턴 구현법 public class Singleton{ private static SingleTon uniqueInstance; private Singleton() {} public static Singleton getInstance(){ if(uniqueInstance == null){ unuqueInstance = new Singleton(); } return uniqueInstance; } } 위 코드는 얼핏보기에 싱글톤 패턴을 정확히(안전히) 구현한 것 같지만 멀티 스레드 환경에서 실행하였을 때 문제점이 발생합니다. getInsta..

싱글톤 패턴 - 리틀 싱글톤(Little Lisper스타일의 문답)

리틀 싱글톤 객체를 어떻게 생성 합니까 ? - new MyObject(); 다른 객체에서 MyObject를 만들고 싶어한다면 어떻게 해야 하죠? MyObject에 대해서 new 연산자를 다시 쓸 수 있나요? - 물론 가능하죠. 클래스만 있으면 언제든지 인스턴스를 만들 수 있는 거죠? - 예, public 으로 선언된 거라면 별 문제 없습니다. 만약 public 으로 선언되지 않았으면요? - 만약 public 클래스로 선언하지 않은 클래스라면 같은 패키지 안에 있는 클래스에서만 인스턴스를 만들 수 있습니다.하지만 같은 패키지에 속한 클래스에서는 여전히 인스턴스를 두 개 이상 만들 수 있죠. 흠.. 흥미롭군요.. 이렇게 할수있는건 혹시 아나요 ? public MyClass{ private MyClass() ..