Interface Nedir Ne İşe Yarar

Interface yazılımsal olarak classlara arayüz görevi görür ve class ların o operasyonları imzalamasını zorunlu hale getirir.
Interface aslında sürdürülebilir yazılımın en büyük özelliklerinden biridir. Yazılımlarda olay gündelik hayat ve kurallarla oluşuyor bu yüzden değişim ve gelişimi karşılamamız gerekmektedir bunu yönetiyor olabilmemiz lazım. (9 katlı bir bina yapmak istediğinde 8 katını yapıp aaaa olmamış binayı yıkıp baştan yapayım demen zor belki ama yazılımsal bir projede duruma göre değişim gelişim yapılabilmelidir.)Interfaceler ile değişimi yönetebiliyor oluyoruz.



namespace Interface
{
    class Program
    {
        static void Main(string[] args)
        {
            //ilerde farklı bir mevzuat gelirse çok kolay bir şekilde implementasyonunu yapabiliriz.  
            CustomerManager customerManager = new CustomerManager(new Mevzuat1());
            customerManager.Add();
            Console.ReadLine();
        }
    }

    class CustomerManager
    {
        private IMevzuat _mevzuat;

        public CustomerManager(IMevzuat mevzuat)
        {
            _mevzuat = mevzuat;
        }
         
        public void Add()
        {
            _mevzuat.IslemYap();
        }
    }
    // interface new lenemez
    interface IMevzuat
    {
        void IslemYap();
    }
    // birinci mevzuat bir IMevzuat implementasyonudur
    class Mevzuat1 : IMevzuat
    {
        public void IslemYap()
        {
            Console.WriteLine("1.Mevzuat");
        }
    }
    class Mevzuat2 : IMevzuat
    {
        public void IslemYap()
        {
            Console.WriteLine("2.Mevzuat");
        }
    }
}

Hiç yorum yok:

Yorum Gönder