Sobes.tech
Junior — Middle
155

Шумо метавонед баъзе намунаҳои тарҳрезиро дар назар дошта бошед, ғайр аз Singleton?

Ҷавоб аз AI

sobes.tech AI

Помимо Singleton, существуют множество других паттернов проектирования, которые помогают решать типичные задачи разработки:

  • Factory Method — создание объектов через фабричный метод, позволяющий делегировать создание подклассам.
  • Observer — паттерн для оповещения множества объектов об изменениях состояния другого объекта.
  • Decorator — динамическое добавление новых обязанностей объекту без изменения его структуры.
  • Strategy — определение семейства алгоритмов, которые можно взаимозаменять во время выполнения.
  • Adapter — преобразование интерфейса одного класса в интерфейс другого, ожидаемый клиентом.

Пример использования паттерна Strategy:

interface PaymentStrategy {
    void pay(int amount);
}

class CreditCardPayment implements PaymentStrategy {
    public void pay(int amount) {
        System.out.println("Оплата " + amount + " с кредитной карты");
    }
}

class PayPalPayment implements PaymentStrategy {
    public void pay(int amount) {
        System.out.println("Оплата " + amount + " через PayPal");
    }
}

class ShoppingCart {
    private PaymentStrategy paymentStrategy;

    public void setPaymentStrategy(PaymentStrategy strategy) {
        this.paymentStrategy = strategy;
    }

    public void checkout(int amount) {
        paymentStrategy.pay(amount);
    }
}