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.