Що таке патерн Strategy?
javascript
// Різні стратегії оплати
class PayPalPayment {
pay(amount) {
console.log(`Сплачено ${amount} через PayPal`);
}
}
class CreditCardPayment {
pay(amount) {
console.log(`Сплачено ${amount} через кредитну картку`);
}
}
// Контекст використовує стратегію
class PaymentProcessor {
constructor(strategy) {
this.strategy = strategy;
}
process(amount) {
this.strategy.pay(amount);
}
}
// Використання - вибір стратегії в runtime
const processor = new PaymentProcessor(new PayPalPayment());
processor.process(100);Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.