Назад к вопросам
Junior — Middle
114
Можешь назвать некоторые паттерны проектирования, помимо Singleton?
Ответ от нейросети
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);
}
}