Вынесение в трэйты работы с API платёжных систем, можно ли? Есть какой-то сервис который позволяет менять валюту в одной платёжной системе, на другую. Было бы нормально вынести в трейты логику работы с API платёжных систем и потом использовать эти трэйты в классе обмена?trait PaymentSystem1 {
...
}
trait PaymentSystem2 {
...
}
trait PaymentSystem3 {
...
}
class ExchangerSystem1System2 {
use PaymentSystem1, PaymentSystem2;

...
}
class ExchangerSystem1System3 {
use PaymentSystem1, PaymentSystem3;
...
}
class ExchangerSystem2System3 {
use PaymentSystem2, PaymentSystem3;
...
}
Может быть есть ещё какие-нибудь варианты? Как бы сделали Вы?

21 Авг 2019 в 07:01
176 +1
0
Ответы
1

Да, можно вынести логику работы с API платежных систем в трейты и затем использовать их в классе обмена. Это будет хорошим подходом для повторного использования кода и улучшения читаемости и поддерживаемости кода.

Одним из возможных вариантов является создание отдельного класса, который будет содержать общую логику работы с API платежных систем, и затем наследование этого класса в классе обмена валют. Например:

class PaymentSystem {
public function makePayment($amount) {
// логика работы с API платежной системы
}
}
class ExchangerSystem1System2 extends PaymentSystem {
// дополнительная логика для обмена валюты между системами 1 и 2
}
class ExchangerSystem1System3 extends PaymentSystem {
// дополнительная логика для обмена валюты между системами 1 и 3
}
class ExchangerSystem2System3 extends PaymentSystem {
// дополнительная логика для обмена валюты между системами 2 и 3
}

Такой подход также позволит упростить добавление и изменение логики работы с API платежных систем. Кроме того, можно использовать интерфейсы для определения общих методов работы с API платежных систем и их реализацию в каждом классе обмена.

20 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир