본문 바로가기

Languages15

[Java] 어댑터(Adapter) 패턴 Adapter 패턴이란 어댑터 패턴은 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 변환하는 패턴으로, 호환성이 없는 인터페이스 때문에 함께 동작할 수 없는 클래스들이 함께 작동하도록 해준다. 예를 들어, 실생활에서 전기 콘센트도 서로 맞지 않을 때 중간에 어댑터를 두어서 연결을 할 수 있듯이 서로 맞지 않는 두 가지 객체를 연결해 주는 역할을 하는 패턴이다. Adapter 패턴 예시 public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } .. 2023. 6. 10.
[Java] 싱글톤(Singleton) 패턴 싱글톤 패턴이란 싱글턴 패턴을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다 싱글톤 패턴을 적용하지 않으면 public class Main { public static void main(String[] args) { String singleton1 = new String("test"); String singleton2 = new String("test"); if (singleton1 == singleton2) { System.out.println("같음"); } else { System.out.println("다름"); } } // 출력 결과 : 다름 } singleton1과 singleton2는.. 2023. 6. 10.
[Java] 팩토리 메서드(Factory Method) 패턴 Factory Method 패턴이란 Factory method 패턴은 부모 클래스에 알려지지 않은 구체 클래스를 생성하는 패턴이며, 자식 클래스가 어떤 객체를 생성할지를 결정하도록 하는 객체지향 디자인 패턴이다. 부모 클래스 코드에 구체 클래스 이름을 감추기 위한 방법으로도 사용한다. 즉, 인스턴스를 생성하는 방법은 부모 클래스가 가지고 있고 상속을 통해 자식 클래스에서 실제로 동작하는 구현체를 작성하는 방법이다. 제품을 정의하는 Product 인터페이스 public interface Product { void use(); } 제품을 사용한다는 행동을 정의했다. 제품을 생성하는 Factory 인터페이스 public interface Factory { Product createProduct(String n.. 2023. 6. 10.
[Java] 빌더(Builder) 패턴 Builder 패턴 이란 Builder 패턴은 객체 생성을 위한 디자인 패턴 중 한 방법으로, 간단한 클래스 객체를 생성할 때는 괜찮겠지만 복잡한 클래스 객체를 한 번에 생성하기는 많은 어려움이 있을 수 있기 때문에 구조를 이루는 필드를 하나씩 만들어 가는 방법이다. Builder 패턴 적용 public class Text { private String text; public Text(String text) { this.text = text; } public Text() {} @Override public String toString() { return text; } public static class Builder { private String title; private String content; p.. 2023. 6. 8.