Inheritance: IKrediManager
Exemple #1
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            ILoggerService database = new DatabaseLoggerService();
            ILoggerService file     = new FileLoggerService();

            BasvuruManager basvuru  = new BasvuruManager();
            BasvuruManager basvuru2 = new BasvuruManager();

            basvuru.BasvuruYap(konutKrediManager, new DatabaseLoggerService());
            basvuru2.BasvuruYap(new EsnafKrediManeger(), new SmsLoggerServise());


            //basvuru.BasvuruYap(konutKrediManager);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuru.KrediBilgilendirme(krediler);
        }
Exemple #2
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            //ihtiyacKrediManager.Hesapla();

            IKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            IKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();

            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileloggerService     = new FileLoggerService();

            BasvuruManager basvuruManager = new BasvuruManager();

            //basvuruManager.BasvuruYap(ihtiyacKrediManager, new DatabaseLoggerService());
            //basvuruManager.BasvuruYap(ihtiyacKrediManager, databaseLoggerService);

            basvuruManager.BasvuruYap(konutKrediManager, new List <ILoggerService> {
                databaseLoggerService, fileloggerService
            });

            List <ILoggerService> loggerServices = new List <ILoggerService>();

            loggerServices.Add(databaseLoggerService);
            loggerServices.Add(fileloggerService);
            basvuruManager.BasvuruYap(konutKrediManager, loggerServices);


            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #3
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            ILoggerService dabaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService   = new FileLoggerService();

            List <ILoggerService> loggers = new List <ILoggerService>()
            {
                dabaseLoggerService, fileLoggerService
            };

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(tasitKrediManager, loggers);


            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
        }
Exemple #4
0
        static void Main(string[] args)
        {
            IKrediManager ıhtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();
            IKrediManager esnafKrediManeger   = new EsnafKrediManeger();

            ILoggerService dataBaseLoggerService = new DataBaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(ıhtiyacKrediManager, fileLoggerService);
            basvuruManager.BasvuruYap(tasitKrediManager, fileLoggerService);
            basvuruManager.BasvuruYap(konutKrediManager, fileLoggerService);
            basvuruManager.BasvuruYap(esnafKrediManeger, fileLoggerService);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ıhtiyacKrediManager, tasitKrediManager
            };

            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #5
0
        static void Main(string[] args)
        {
            IKrediManager     ihtiyacKrediManager   = new IhtiyacKrediManager(); // Interfaces can hold reference of the class which implement this interface.
            IKrediManager     tasitKrediManager     = new TasitKrediManager();   // Interfaces can hold reference of the class which implement this interface.
            IKrediManager     konutKrediManager     = new KonutKrediManager();   // Interfaces can hold reference of the class which implement this interface.
            ILoggerService    databaseloggerService = new DatabaseLoggerService();
            FileLoggerService fileloggerService     = new FileLoggerService();

            List <ILoggerService> logger = new List <ILoggerService>()
            {
                new DatabaseLoggerService(), new SMSLoggerService()
            };


            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(new EsnafKredisiManager(), logger);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                konutKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #6
0
        static void Main(string[] args)
        {
            //ekranlar acılır pencere gibi dusun
            IKrediManager ıhtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();
            IKrediManager esnafKrediManager   = new EsnafKrediManager();
            //ekranda cagırma yapacagımız yerler
            BasvuruManager basvuruManager        = new BasvuruManager();
            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();
            ILoggerService smsLoggerService      = new SmsLoggerService();

            // basvuruManager.BasvuruYap(tasitKrediManager, databaseLoggerServic);
            //basvuruManager.BasvuruYap(ıhtiyacKrediManager,fileLoggerService);

            List <ILoggerService> logger = new List <ILoggerService>()
            {
                smsLoggerService, databaseLoggerService
            };                                                                                                    //ekranda secilen logları aldı varsayılıyor.

            basvuruManager.BasvuruYap(esnafKrediManager, logger);
            List <ILoggerService> loggers = new List <ILoggerService>()
            {
                smsLoggerService, fileLoggerService
            };

            basvuruManager.BasvuruYap(konutKrediManager, loggers);


            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ıhtiyacKrediManager, tasitKrediManager
            };                                                                                               //ekrandan secilenleri liste tutup birden fazla hesaplama yaparız
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #7
0
        static void Main(string[] args)
        {
            //INTERFACELER REFERANS BİLGİSİ TUTARLAR


            IKrediService ihtiyacKrediService = new IhtiyacKrediManager();
            IKrediService tasitKediService    = new TasitKediManager();
            IKrediService konutKrediService   = new KonutKrediManager();

            ILoggerService databaseLoggerService = new DatabseLoggerService();
            ILoggerService FileLoggerService     = new FileLoggerService();

            BasvuruManager basvuruService = new BasvuruManager();

            basvuruService.BasvuruYap(ihtiyacKrediService, FileLoggerService);


            List <IKrediService> krediler = new List <IKrediService>()
            {
                ihtiyacKrediService, tasitKediService
            };

            //basvuruService.KrediOnBilgilendirme(krediler);
        }
Exemple #8
0
        static void Main(string[] args)
        {
            IKrediBaseManager ihtiyacKrediManager = new IhtiyacKrediManager();
            TasitKrediManager tasitKrediManager   = new TasitKrediManager();
            KonutKrediManager konutKrediManager   = new KonutKrediManager();


            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();



            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(konutKrediManager, fileLoggerService);



            //BasvuruManager basvuruManager = new BasvuruManager();
            //basvuruManager.BasvuruYap(konutKrediManager,new FileLoggerService());


            //basvuruManager.BasvuruYap(konutKrediManager,new DatabaseLoggerService());
            //           ILoggerService databaseLoggerService = new DatabaseLoggerService();



            //List<IKrediBaseManager> krediler = new List<IKrediBaseManager> { ihtiyacKrediManager };
            List <IKrediBaseManager> krediler = new List <IKrediBaseManager> {
                ihtiyacKrediManager, tasitKrediManager
            };

//            basvuruManager.KrediOnBilgilendimesiYap(krediler);

            Console.ReadKey();
        }
Exemple #9
0
        static void Main(string[] args)
        {
            IKrediManager ıhtiyacKrediManager = new IhtiyacKrediManager();

            IKrediManager tasitKrediManager = new TasitKrediManager();

            IKrediManager konutKrediManager = new KonutKrediManager();

            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLogerService      = new
                                                   FileLoggerService();

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(konutKrediManager, new List <ILoggerService> {
                new DatabaseLoggerService(), new FileLoggerService()
            });

            List <IKrediManager> krediler = new List <IKrediManager> {
                ıhtiyacKrediManager, konutKrediManager, tasitKrediManager
            };

            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #10
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new İhtiyacKrediManager();//İhtiyacKrediManager yazsanda bu şekilde olsada çalışır. Interfaceler de interfaceyi implemente eden classın referans numarasını tutar.
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();


            BasvuruManager basvuruManager = new BasvuruManager();

            // basvuruManager.BasvuruYap(ihtiyacKrediManager, new DatabaseLoggerService()); //ihtiyaç kredisine başvurulduğunu düşünelim.

            basvuruManager.BasvuruYap(new EsnafKrediManager(), new List <ILoggerService> {
                new DatabaseLoggerService(), new SmsLoggerService()
            });

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnBilgilendirmeYap(krediler);
        }
Exemple #11
0
        static void Main(string[] args)
        {
            //KonutKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();


            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            ILogerService databaseLogerService = new DatabaseLogerService();
            ILogerService fileLogerService     = new FileLogerService();


            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(ihtiyacKrediManager, databaseLogerService);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #12
0
        static void Main(string[] args)
        {
            //İnterfacelerde kendisine bağlı olan class'ların referans numarasını tutabilme özelliğine sahiptir.
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();

            List <ILoggerService> loggers = new List <ILoggerService> {
                new SmsLoggerService(), new FileLoggerService()
            };
            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(new EsnafKredisiManager(), loggers);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };

            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #13
0
        static void Main(string[] args)
        {
            //IhtiyacKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            //ihtiyacKrediManager.Hesapla();

            //TasitKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            //KonutKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();


            //---Boyle yapsakda olur basinda IKrediManager cunku interface oldugu icin referansini tutabiliyor---
            //IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            //ihtiyacKrediManager.Hesapla();

            //IKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            //IKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();

            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            BasvuruManager basvuruManager = new BasvuruManager();
            //basvuruManager.BasvuruYap(ihtiyacKrediManager);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager
            };

            basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #14
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); //interface ler de referans numarası tutuyor
            //ihtiyacKrediManager.Hesapla();

            IKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            IKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();

            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(konutKrediManager, databaseLoggerService);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #15
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();


            IKrediManager tasitKrediManager = new TasitKrediManager();


            IKrediManager konutKrediManager = new KonutKrediManager();

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(ihtiyacKrediManager);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };

            basvuruManager.KrediOnBilgilendirmesiYap(krediler);


            Console.ReadLine();
        }
Exemple #16
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();  // bu satırın başına başlangıçta IhtiyacKrediManager yazmıştık
            //ihtiyacKrediManager.Hesapla();                                  // interfaceler de o interface i implemente eden classın referans numarasını tutabilir

            IKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();

            IKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            //IKrediManager esnafKrediManager = new EsnafKredisiManager();  bu satırı yazmak yerine aşağıda new ledik.


            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();
            //ILoggerService smsLoggerService = new SmsLoggerService();    bu satırı yazmak yerine aşağıda new ledik.

            List <ILoggerService> loggers = new List <ILoggerService> {
                new SmsLoggerService(), new FileLoggerService()
            };


            BasvuruManager basvuruManager = new BasvuruManager();

            //basvuruManager.BasvuruYap(new EsnafKredisiManager(), new List<ILoggerService> { new DatabaseLoggerService(), new SmsLoggerService()} );  //yukarıda bi esnaf kredisi intance ı da oluşturulabilir. onun yerine burda new dedik

            basvuruManager.BasvuruYap(new EsnafKredisiManager(), loggers);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };

            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #17
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new İhtiyacKrediManager();
            //ihtiyacKrediManager.Hesapla();

            IKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            IKrediManager konutKrediManager = new KonutKrediManager();
            //konutKrediManager.Hesapla();
            IKrediManager esnafKredisi = new EsnafKredisi();

            ILoggerService databaseLoggerService = new DateBaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();
            ILoggerService smsLogger             = new smsLogger();

            List <ILoggerService> loggers = new List <ILoggerService> {
                new smsLogger(), new FileLoggerService()
            };



            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(ihtiyacKrediManager, new List <ILoggerService>
            {
                new DateBaseLoggerService(), new smsLogger()
            });


            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #18
0
        static void Main(string[] args)
        {
            // IhtiyacKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            //ihtiyacKrediManager.Hesapla(); aşağıdaki ile de aynı sonuç olur.

            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); // ***İnterface lerde, o interface i implemente eden classın
            //ihtiyacKrediManager.Hesapla();                                //    referans numarasını tutabiliyormuş.

            IKrediManager tasitKrediManager = new TasitKrediManager();
            //tasitKrediManager.Hesapla();

            IKrediManager konutKrediManager = new KonutKrediManager();
            // konutKrediManager.Hesapla();



            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLogerService      = new FileLoggerService();

            BasvuruManager basvuruManager = new BasvuruManager();
            // basvuruManager.BasvuruYap(konutKrediManager, databaseLoggerService);
            //                        konutKrediManager, new DatabaseLoggerService() böyle de yollanabilirdi.

            // basvuruManager.BasvuruYap(new EsnafKredisiManager(), new SmsLoggerService());
            List <ILoggerService> loggers = new List <ILoggerService> {
                new SmsLoggerService(), new FileLoggerService()
            };

            basvuruManager.BasvuruYap(new EsnafKredisiManager(), loggers);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            //basvuruManager.KrediOnbilgilendirmesiYap(krediler);
        }
Exemple #19
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLogerService      = new FileLoggerService();



            //interfaceler öteki classların da referans nosunu tutabiliyor.

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(ihtiyacKrediManager, new DatabaseLoggerService());

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager, konutKrediManager
            };

            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #20
0
        static void Main(string[] args)
        {
            IKrediManager ihtiyacKrediManager = new İhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();

            IloggerService databaseLoggerService = new DatabaseLoggerService();
            IloggerService fileLoggerService     = new FileLoggerService();

            List <IloggerService> loggers = new List <IloggerService> {
                new SmsLoggerService(), new FileLoggerService()
            };

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(new EsnafKredisiManager(), loggers);
            //yukarıdaki gibi newleyi buraya nesneyi yazabilirsin// plymorfism
            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };
            // listeden istediğini çoklu olarak hesaplatabilirsin tek tek değilde
            // basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #21
0
        static void Main(string[] args)
        {
            IKrediManager  ihtiyacKrediManager   = new IhtiyacKrediManager();
            IKrediManager  tasitKrediManager     = new TasitKrediManager();
            IKrediManager  konutKrediManager     = new KonutKrediManager();
            ILoggerService databaseLoggerService = new DataBaseLoggerService();
            ILoggerService fileLoggerService     = new FileLoggerService();

            List <ILoggerService> loggers = new List <ILoggerService> {
                new SmsLoggerService(), new FileLoggerService()
            };


            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(new EsnafKredisiManager(), loggers);

            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };

            //basvuruManager.KrediOnbilgilendirmesiYap(krediler);
        }
Exemple #22
0
        //interfaceler de implemente ettiği classların refrans numarasını tutabilir.
        static void Main(string[] args)
        {
            IKrediManager  ıhtiyacKredi     = new IhtiyacKrediManager();
            IKrediManager  tasitKredi       = new TasitKrediManager();
            IKrediManager  konutKredi       = new KonutKrediManager();
            ILoggerService fileLogerService = new FileLoggerService();
            ILoggerService dataLogerService = new DatabaseLoggerService();


            BasvuruManager basvuruManager = new BasvuruManager();
            // basvuruManager.BasvuruYap(ıhtiyacKredi, dataLogerService);// altdaji kodla aynı işlevi görür.
            // basvuruManager.BasvuruYap(ıhtiyacKredi, new DatabaseLoggerService());
            //Alternatif--1--
            List <ILoggerService> loggerServices = new List <ILoggerService>()
            {
                fileLogerService,
                dataLogerService
            };

            basvuruManager.BasvuruYap(konutKredi, loggerServices);
            //Alternatif--2--
            basvuruManager.BasvuruYap(tasitKredi, new List <ILoggerService>()
            {
                new FileLoggerService(), dataLogerService
            });


            //------------------------------------------------------------------------------------------
            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ıhtiyacKredi,
                tasitKredi,
                konutKredi
            };
            // basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #23
0
        static void Main(string[] args)
        {
            /*
             * Kodlar Kötüden iyiye doğru gidiyor. Her numara bir çözüm yöntemini temsil eder ve her yöntem bir öncekinden iyidir.
             *
             *
             */

            // 1.Yol

            /*
             * TasıtKrediManager tasitKrediManager = new TasıtKrediManager();
             * tasitKrediManager.Hesapla();
             *
             * KonutKrediManager konutKrediManager = new KonutKrediManager();
             * konutKrediManager.Hesapla();
             *
             * IhtiyacKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
             * ihtiyacKrediManager.Hesapla();
             */


            //2.Yol

            /*
             * IKrediManager tasitKrediManager = new TasıtKrediManager();
             * tasitKrediManager.Hesapla();
             *
             * IKrediManager konutKrediManager = new KonutKrediManager();
             * konutKrediManager.Hesapla();
             *
             * IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
             * ihtiyacKrediManager.Hesapla();
             */


            //3. Yol

            /*
             * IKrediManager tasitKrediManager = new TasıtKrediManager();
             * IKrediManager konutKrediManager = new KonutKrediManager();
             * IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
             *
             *
             * BasvuruManager basvuruManager = new BasvuruManager();
             * basvuruManager.BasvuruYap(konutKrediManager);
             * basvuruManager.BasvuruYap(tasitKrediManager);
             * basvuruManager.BasvuruYap(ihtiyacKrediManager);
             */

            //4.Yol
            IKrediManager tasitKrediManager   = new TasıtKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();
            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();

            ILoggerService databaseLogger = new DatabaseLoggerService();
            ILoggerService fileLogger     = new FileLoggerService();

            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(konutKrediManager, fileLogger);


            //List<IKrediManager> krediler = new List<IKrediManager>() { ihtiyacKrediManager, konutKrediManager };
            //basvuruManager.KrediOnBilgilendirmesiYap(krediler);
        }
Exemple #24
0
        static void Main(string[] args)
        {
            //Interfaceleri işlicez......!!!!!!!!!!!!
            //Diyelimki bir bankada krediler var ve biz bu kredilerle geri dönüş tutarları belirleyip eğer bu krediyi kullanırsan 2-3-5 yılın sonunda bu kadar para ödersin (işte çiftçi kredisi kullanırsan bu kadar, esnaf kullanırsan bu kadar vs vs)
            //KrediManager sınıfı açıp operasyonları yazalım..
            //şimdi birden fazla kredi çeşidi vardı.. her kredi çeşiti için sınıf açarız ama oop2de de olduğu gibi bu kredi çeşitleri aynı zamanda bir kredidir..
            //Bu sebeple KonutKrediManager adında açtığımız sınıfın ismine gidi ":KrediManager" ı da yazacağız.. Bunu diğer kredi çeşitlerine de yapacağız...
            //hangi çeşit olursa olsun her kredi çeşiti bir kredidir.. oop2de ki gerçek ve tüzel müşterilerin müşteri olması gibi buradaki kredilerin ortak paydası KrediManager dır..
            //Bu yaptığımız işlem zaten Miraslama işlemidir..

            //bütün krediler KrediManagerdaki hespla işini farklı şekillerde ele alır her birinin belli bir faiz oranı vardır ve hepsinin kendine öz dosya masrafları vardır..
            //Kısacası hepside hesapla işini farklı şekilde ele alır.. yani:
            //KrediManager Class halindeyken tek başına benim için bir anlam ifade etmiyor..
            //İşte bu tip alternatif yani imzanın aynı olduğu (void hesapla()) ama içerisinin farklı olduğu durumlarda biz Class KrediManager daki classı, class olarak değilde interface olarak oluştururuz..
            //Oluşturdum.. ve şu şekildeyken;

            //class KrediManager
            //{
            //     public void Hesapla()
            //     {
            //     }
            //}

            //o şekle getirdim..



            //IhtiyacKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();            //Baştaki IhtiyacKrediManager yerine IKrediManager'da yazabilirdik..
            //ihtiyacKrediManager.Hesapla();

            //TasitKrediManager tasitKrediManager = new TasitKrediManager();                  //Baştaki TasitKrediManager yerine IKrediManager'da yazabilirdik..
            //tasitKrediManager.Hesapla();

            //KonutKrediManager konutKrediManager = new KonutKrediManager();                  //Baştaki KonutKrediManager yerine IKrediManager'da yazabilirdik..
            //konutKrediManager.Hesapla();

            //Bu demek oluyor ki interface lerde o interface i implemente eden classın referans numarasını tutabiliyor.. aşağıdakini yazabilmek için yukarıyı commentledim..



            //şubedeki arkadaşımızın ekranında bulunan 3 kredi aşağıdaki olsun..

            IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager();
            IKrediManager tasitKrediManager   = new TasitKrediManager();
            IKrediManager konutKrediManager   = new KonutKrediManager();


            ILoggerService databaseLoggerService = new DatabaseLoggerService();
            ILoggerService fileLoggerService     = new FilebaseLoggerService();


            //şimdi başvuru yapıyorum..
            BasvuruManager basvuruManager = new BasvuruManager();

            basvuruManager.BasvuruYap(konutKrediManager, databaseLoggerService);              //buraya hangi kredi türünü yazarsam onun ödeme planı hesaplanır.. //başvuru yapa loglama işlemini koyduğumuz için mecburen buraya da onu koyduk..

            Console.WriteLine("Basvuru yap kısmı bitti, çıktıda ayırt edebilmek için bunu yazdım..");



            List <IKrediManager> krediler = new List <IKrediManager>()
            {
                ihtiyacKrediManager, tasitKrediManager
            };                                                                                                        //her listte eğer yapılmamışsa ampüle tıkla "using System.Collections.Generic:" e tıkla

            basvuruManager.KrediOnBilgilendirmesiYap(krediler);


            //bu yaptığımız hareket aslında bir öncekinin aynısı sadece burada liste yolladım ve onları tek tek hesapladım.. (listeye neleri yazmışsam)


            //-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

            //Diyelimki projemizde loglama yapmak istiyoruz.. loglama nedir? -kim, ne zaman, hangi operasyonu çağırdığıdır yani bir nevi o sistemde olan hareketleri döktüğümüz bir dökümdür..
            //loglamayı farklı yöntemlerle uygulayabiliriz;
            //logları bir dosyada tutabiliriz, veri tabanında tutabiliriz, sms olarak atabiliriz (krediye başvuru olduğunda ona sms gönderilmesi gibi), mail olarak atabiliriz..
            //bu yöntemlerin hepsinin imzası aynı ama dosyaya yazarken dosyaya yazma kodları, veri tabanına yazarken veri tabanına yazma kodları vs yazılır.. ama hepsinde yapılan işlem loglamadır..
            //peki en başta buna nasıl karar vericem?
            //alternatif sistemler varsa (veri tabanına yazma, dosyaya yazma, sms yollama, mail yollama..vs)
            //bazen mesela tek sistem vardır, veri tabanına yazma gibi.. iç müşteri (bankadaki ilgili birimler) tarafından başka bişey istenmez.. böyle durumlarda bile biz ona interface ekleriz..
            //Add-class-interface i seç- ad: ILoggerService (bundan sonra interfacelere servis dicez)
        }