자바 패턴
디자인 패턴 [스테이트 패턴] State Pattern 개념 예제
디자인 패턴 [스테이트 패턴] State Pattern 개념 예제
2022.01.03State Pattern이란? ▶ 객체의 내부 상태가 바뀔 때 객체의 동작을 변경할 수 있도록 합니다. (객체의 현재 상태에따라 입력 혹은 실행하는 메소드가 다르다.) 코드 요약 ▶ Calculator 객체는 StartState, Num1State, OperandState, Num2State총 4가지의 상태를 가집니다. 사용자는 숫자 혹은 연산자를 입력하며 'q'가 입력되면 종료합니다. 1. StartState: 숫자를 입력받고 num1에 저장합니다. 2. Num1State: 연산자를 입력 받고 operand에 저장합니다. 3. OperandState: 숫자를 입력받고 num2에 저장합니다. 4. Num2State: '='을 입력받아 계산을 실행하고 출력합니다. 클래스 다이어그램 1. State inte..
디자인 패턴 [어댑터 패턴] Adapter Pattern 개념 예제
디자인 패턴 [어댑터 패턴] Adapter Pattern 개념 예제
2022.01.03Adapter Pattern이란? ▶ 클래스의 인터페이스를 클라이언트가 원하는 형태의 또 다른 인터페이스로 변환. 어댑터는 호환되지 않는 인터페이스 때문에 동작하지 않는 클래스들을 함께 동작할 수 있도록 만들어준다. 코드 요약 ▶ linux 환경에서 사용하는 LinuxCalculator와 window 환경에서 사용하는 WindowCalculator가 있다고 가정합니다. linuxCalculator는 덧셈만을 지원하고 windowCalculator는 뺄쎔만 지원합니다. CalculatorAdapter는 linux 환경에서 windowCalculator의 뺄셈 가능을 할 수 있게 해주는 역할을 하는 Adatepr입니다. 클래스 다이어그램 1. LinuxCalculator class public class L..
디자인 패턴 (싱글톤 패턴) Singleton Pattern 개념과 예제
디자인 패턴 (싱글톤 패턴) Singleton Pattern 개념과 예제
2021.12.31Singleton Pattern이란? ▶클래스가 한 개의 인스턴스만을 만들 수 있도록 하고, 어디서나 생성된 인스턴스에 접근할 수 있도록 합니다. 여러가지 방법으로 Singleton Pattern을 제작하므로 클래스 다이어그램은 생략하겠습니다. SingletonCalculator는 singleton으로 설계되었으며 더하기 연산과 빼기 연산을 수행합니다. 1. static 메소드/ static 변수 public class SingletonCalculator { public static SingletonCalculator calculator = null; private SingletonCalculator() { } public SingletonCalculator getCalculator() { if (cal..