Java/Java 일골드 2022. 6. 2. 23:47
데코레이터 패턴 /** * [데코레이터 패턴]은 기본 기능에 추가할 수 있는 많은 종류의 부가 기능에 * 파생되는 다양한 조합을 동적으로 구현할 수 있는 패턴이다. */ public class DecoratorPattern { public static void main(String[] args) { Aircraft fighterPlane = new LaserDecorator( new FireballDecorator( new MissileDecorator( new NormalAttack()))); fighterPlane.attack(); } } abstract class Aircraft { public abstract void attack(); } class NormalAttack extends Aircr..
Java/Java 일골드 2022. 6. 2. 23:15
옵저버 패턴 /** * [옵저버 패턴]은 통보 대상 객체의 관리를 Subject 클래스와 Observer 인터페이스로 일반화한다. * 그러면 데이터 변경을 통보하는 클래스(ConcreteSubject)는 * 통보 대상 클래스나 객체(ConcreteObserver)에 대한 의존성을 없앨 수 있다. * 결과적으로 옵저버 패턴은 통보 대상 클래스나 대상 객체의 변경에도 * ConcreteSubject 클래스를 수정 없이 그대로 사용할 수 있도록 한다. */ public class ObserverPattern { public static void main(String[] args) { Recruit recruit = new Recruit(); JobKorea jobKorea3 = new JobKorea(recr..
Java/Java 일골드 2022. 5. 25. 23:47
커맨드패턴 /** * 디자인패턴 - 커맨드패턴 * 실행될 기능을 캡슐화함으로써 기능의 실행을 요구하는 호출자(invoker) 클래스와 * 실제 기능을 실행하는 수신자(receiver) 클래스 사시의 의종성을 제거한다. * 따라서 실행될 기능의 변경에도 클래스를 수정 없이 그대로 사용할 수 있도록 해준다. */ public class CommandPattern { public static void main(String[] args) { Zillot zillot = new Zillot(); ZillotCommand zillotCommand = new ZillotCommand(zillot); Protoss protoss1 = new Protoss(zillotCommand); protoss1.make(); Ne..
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.