예제 #1
0
 public void ArabaninDeposunuFulle(Araba araba)
 {
     if (araba.BenzinSeviye < 100)
     {
         araba.BenzinSeviye = 100;
         //BildirimServisi.YakitBildirim(araba.BenzinSeviye);
     }
 }
 public void MotoruCalistir(Araba araba)
 {
     if (_depoServisi.DepoDoluMu(araba))
     {
         Console.WriteLine("motor çalıştı");
     }
     araba.MotorCalisiyorMu = true;
 }
 public void MotoruDurdur(Araba araba)
 {
     if (!MotorCalisiyorMu)
     {
         throw new MotorZatenCalismiyorException("drgdr");
         //throw new Exception("motor zaten çalışmıyor");
     }
     araba.MotorCalisiyorMu = false;
 }
        /*Single Responsibility principle-Tek sorumluluk ilkesi
         * (isviçre çakısı olma-Kullanma!!)
         * her iş ya da sorumluluk tek bir şeye ait olmalı
         *
         * örneğin bir class var ve üzerinde değişiklik yapıldığında hem DAL hem UI katmanı etkileniyorsa burada bu prensibe uyulmamış demektir!
         * eğer bir iş birden fazla işe bölünebiliyorsa bölünmelidir, bu bize modülerliği sağlar.
         *
         */
        static void Main(string[] args)
        {
            Araba        araba = new Araba("kırmızı", 50);
            MotorServisi mt    = new MotorServisi(araba);

            //mt.MotoruCalistir();
            BildirimServisi.ArabaninDurumunuVer(araba);

            Console.ReadLine();
        }
 public MotorServisi(Araba araba)
 {
     _depoServisi = new DepoServisi();
 }
예제 #6
0
 public static void ArabaninDurumunuVer(Araba araba)
 {
     Console.WriteLine(araba.ToString());
 }
예제 #7
0
 public int DepodakiBosYeriVer(Araba araba) => 100 - araba.BenzinSeviye;
예제 #8
0
 //public bool DepoBosMu { get; set; }
 public bool DepoDoluMu(Araba araba) => araba.BenzinSeviye == 100;