Bunu best practice olarak sizlerce nasıl yapabilirim.
Aklımdan geçen öncelikle bir interface yazmak.
public interface IPaymentProcessor
{
bool ProcessPayment(Order order);
}Sonrasında her payment processor için bir servis açayım diyorum
public class İyizicoService: IPaymentProcessor
{
public bool ProcessPayment(Order order)
{
return true;
}
}
public class PaytrService: IPaymentProcessor
{
public bool ProcessPayment(Order order)
{
return false;
}
}Sonrasında bir navigator tarzı bir şey düşünüyorum.
public class PaymentProcessorNavigator
{
public static IPaymentProcessor Navigate(Order Order)
{
switch (order.ProcessorType)
{
case Processors.Iyizico:
return new IyiziService();
case Processors.Paytr:
return new PayTrService();
}
}
}Aklıma ilk gelen yöntem böyle bir şey oldu ama daha iyi bir fikri olan veya biz şöyle yaptık güzel oldu diyecek varsa yorumları bekliyorum, şimdiden teşekkürler.