static void Main(string[] args) { IKrediManager ıhtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); IKrediManager esnafKrediManager = new EsnafKredisiManager(); ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(tasitKrediManager, databaseLoggerService); basvuruManager.BasvuruYap(esnafKrediManager, smsLoggerService); //basvuruManager.BasvuruYap(new EsnafKredisiManager(), new SmsLoggerService()); //basvuruManager.BasvuruYap(tasitKrediManager, new DatabaseLoggerService()); -- bu şekilde de yapılabilir. // interface onu implement eden class ın referans numarasını tutabilir. List <IKrediManager> krediler = new List <IKrediManager>() { ıhtiyacKrediManager, tasitKrediManager }; // basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { //Interfacelerde referans numarsı tutabilir. IKrediBaseManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediBaseManager tasitKrediManager = new TasitKrediManager(); IKrediBaseManager konutKrediManager = new KonutKrediManager(); IKrediBaseManager esnafKrediManager = new EsnafKredisiManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLogglerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(esnafKrediManager, new List <ILoggerService> { databaseLoggerService, smsLoggerService }); List <IKrediBaseManager> krediler = new List <IKrediBaseManager>() { ihtiyacKrediManager, konutKrediManager, tasitKrediManager }; basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager esnafKrediManager = new EsnafKredisiManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService> { new SmsLoggerService(), new FileLoggerService() s } BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(esnafKrediManager, loggers); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; // basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { ICreditManager needCreditManager = new NeedCreditManager(); ICreditManager vehicleCreditManager = new VehicleCreditManager(); ICreditManager housingCreditManager = new HousingCreditManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> logger = new List <ILoggerService>() { databaseLoggerService, smsLoggerService }; ApplicationManager applicationManager = new ApplicationManager(); applicationManager.MakeAnApplication(vehicleCreditManager, logger); List <ICreditManager> credits = new List <ICreditManager>() { needCreditManager, vehicleCreditManager }; //applicationManager.GiveCreditInformation(credits); }
static void Main(string[] args) { IhtiyacKrediManager ihtiKrediManager = new IhtiyacKrediManager(); //IKrediManager ihtiKrediManager = new IhtiyacKrediManager(); olarak tanımlasaydık da aynı şekilde bir çıktı alırdık. //interface, onu implemente eden sınıfın referansını tutabilir. //IKrediManager, IhtiyacKrediManager sınıfının referansını tutabilir. TasitKrediManager tasitKrediManager = new TasitKrediManager(); //interfaceleri, birbirinin alternatifi olan ama kod içerikleri farklı olan durumlar için kullanırız. KonutKrediManager konutKrediManager = new KonutKrediManager(); BasvuruManager basvuruManager = new BasvuruManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); basvuruManager.BasvuruYap(konutKrediManager, fileLoggerService); //basvuruManager.BasvuruYap(konutKrediManager, new FileLoggerService()); -> alternatif basvuruManager.BasvuruYap(tasitKrediManager, smsLoggerService); List <IKrediManager> krediler = new List <IKrediManager> { ihtiKrediManager, konutKrediManager, tasitKrediManager }; // basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
//interfaceleri birbirinin alternatifi olan ama kod içerikleri farklı olan durumlar için kullanırız. İmzaları aynı. //Yapılan işlemler loglamadır. SMS yollama, veritabanına yazma gibi şeyler loglama. static void Main(string[] args) { ICreditManager personalFinanceCreditManager = new PersonalFinanceCreditManager(); ICreditManager vehicleCreditManager = new VehicleCreditManager(); ICreditManager housingCreditManager = new HousingCreditManager(); ICreditManager esnafKrediManager = new EsnafKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); RecourseManager recourseManager = new RecourseManager(); recourseManager.BasvuruYap(esnafKrediManager, new List <ILoggerService> { new DatabaseLoggerService(), new SmsLoggerService() }); //line 22'de parantez içinde new list oluşturmak yerine aşağıdaki alternatifi de kullanabilirsin: //List<ILoggerService> logger = new List<ILoggerService>() {new SmsLoggerService(), new DatabaseLoggerService() }; //yukarıdaki kodu yazdıktan sonra line 22'deki kod aşağıdaki gibi olacak: //recourseManager.BasvuruYap(esnafKrediManager, loggers); List <ICreditManager> krediler = new List <ICreditManager>() { personalFinanceCreditManager, vehicleCreditManager }; //recourseManager.KrediOnBilgilendirmesiYap(krediler); }
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(); ILoggerService smsLoggerService = new SmsLoggerService(); //eğer burayı yazmak istemiyorsan aşağıda yazarken new SmsLoggerService() yazman yeterli. //Burada önemli olan hafızada bir yer açmak. List <ILoggerService> loggers = new List <ILoggerService>() { databaseLoggerService, smsLoggerService }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(ihtiyacKrediManager, loggers); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
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(); //alttakini yapmak yerine böylede yapabiliriz ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(new EsnafKredisiManager(), new List <ILoggerService> { new DatabaseLoggerService(), new SmsLoggerService() }); //new DatabaseLoggerService(); yada new fileLoggerService();buraya yazarsakta olur //istersek 14 ve 15. satırdaki gibi yapıpı buraya new demeden ismini yazarsakta olur. //üst kısma hangi krediyi yazarsak bizi o kredinin hesapla kısmına gönderecek. //bu yaptığımız clasları interfaceye bağlamak işlemi "Depented İnjection"deriz. //bu işlem çok önemlidir. //alt kısma list açmamızın sebebi birden çok krediyi seçersem eğer seçtiklerimmi //aynı anda hesaplasın diye üstte sadecde tek bir krediyi hesaplar list sayesinde birden //fazla krediyi hesaplayabilir. List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager, konutKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { ICreditManager personalFinanceCreditManager = new PersonalFinanceCreditManager(); ICreditManager transportCreditManager = new TransportCreditManager(); ICreditManager mortgageLoanCreditManager = new MortgageLoanCreditManager(); ICreditManager artisanLoanCreditManager = new ArtisanLoanCreditManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsloggerService = new SmsLoggerService(); List <ILoggerService> logger = new List <ILoggerService>() { databaseLoggerService, smsloggerService }; RecourseManager recourseManager = new RecourseManager(); recourseManager.ToApply(transportCreditManager, new List <ILoggerService> { fileLoggerService }); Console.WriteLine("------------------------------------"); recourseManager.ToApply(artisanLoanCreditManager, logger); List <ICreditManager> credits = new List <ICreditManager>() { personalFinanceCreditManager, transportCreditManager }; //recourseManager.CreditPreNotification(credits); }
static void Main(string[] args) { ICreditManager ihtiyacCreditManager = new IhtiyacCreditManager(); //interfaceler implemente edildiiği sınıfların referans nolarını tutabilirler o yüzden ICreditManager yazsam da çalışır aynı şey TasitCreditManager tasitCreditManager = new TasitCreditManager(); //burada tasit yazdım anlasılsın diye ICredit de yazsam aynı şey olacak ICreditManager konutCreditManager = new KonutCreditManager(); ICreditManager esnafCreditManager = new EsnafCreditManager(); ILoggerService dataBaseLoggerService = new DataBaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); ApplyManager applyManager = new ApplyManager(); applyManager.Apply(konutCreditManager, new DataBaseLoggerService(), new List <ILoggerService> { new DataBaseLoggerService(), new SmsLoggerService() }); //buradaki logu ya da kredi türünü değiştirdiğim takdirde hangi seçeneği istiyorsam sağlarım.İster taşıt ister file logu ya da istediğim farklı kombinasyonlar applyManager.Apply(esnafCreditManager, new SmsLoggerService(), new List <ILoggerService> { new DataBaseLoggerService(), new FileLoggerService() }); List <ICreditManager> credits = new List <ICreditManager>() { ihtiyacCreditManager, tasitCreditManager }; //Liste yolu ile hesaplama //applyManager.CreditOnBilgilendirmesiYap(credits); }
static void Main(string[] args) { //interface lerin birbirlerinin alternatifi olan kod içeriklerinin farklı olan kod içerikleri için kullanırız. ICreditManager needLoanManager = new NeedLoanManager(); ICreditManager vehicleLoanManager = new VehicleLoanManager(); ICreditManager mortgageLoanManager = new MortgageLoanManager(); ICreditManager artisanLoanManager = new ArtisanLoanManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService>() { databaseLoggerService, smsLoggerService }; ApplicationManager applicationManager = new ApplicationManager(); applicationManager.MakeAnApplication(needLoanManager, loggers); //Hangi class ı gönderirsem onun methodu çalışır. applicationManager.MakeAnApplication(artisanLoanManager, loggers); List <ICreditManager> credits = new List <ICreditManager>() { needLoanManager, vehicleLoanManager, mortgageLoanManager }; //applicationManager.MakeCreditPreNotification(credits); }
static void Main(string[] args) { //interface'ler new'lenemez..! //Interface'lerde o interface'i implemente eden class'ın referans değerini tutuyor IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager esnafKrediManager = new EsnafKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsmLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService>() { smsmLoggerService, fileLoggerService }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(esnafKrediManager, loggers); //List'e eklenen hangi krediler olursa onların hesabı yapılır List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { ICreditManager ihtiyacCreditManager = new IhtiyacCreditManager(); ICreditManager tasitCreditManager = new TasitCreditManager(); ICreditManager konutCreditManager = new KonutCreditManager(); ICreditManager esnafCreditManager = new EsnafCreditManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService>() { new SmsLoggerService(), new FileLoggerService() }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(esnafCreditManager, loggers); List <ICreditManager> credits = new List <ICreditManager>() { ihtiyacCreditManager, tasitCreditManager }; //basvuruManager.CreditOnBilgilendirmeYap(credits); }
static void Main(string[] args) { ILoanManager consumerLoanManager = new ConsumerLoanManager(); ILoanManager vehicleLoanManager = new VehicleLoanManager(); ILoanManager mortgageLoanManager = new MortgageLoanManager(); ILoanManager artisanLoanManager = new ArtisanLoanManager(); LoanApplicationManager loanApplicationManager = new LoanApplicationManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); //loanApplicationManager.Apply(vehicleLoanManager); //loanApplicationManager.Apply(mortgageLoanManager); loanApplicationManager.Apply(consumerLoanManager, new List <ILoggerService> { databaseLoggerService, smsLoggerService }); loanApplicationManager.Apply(artisanLoanManager, new List <ILoggerService> { new DatabaseLoggerService(), new FileLoggerService() }); loanApplicationManager.Apply(vehicleLoanManager, smsLoggerService); List <ILoanManager> loans = new List <ILoanManager>() { consumerLoanManager, vehicleLoanManager, mortgageLoanManager }; //loanApplicationManager.GiveCreditPreInformation(loans); }
static void Main(string[] args) { //Interface onu implamante eden classın yerini tutabilir. //Interface'i içerikleri aynı olan kod içerikleri farklı olan yapılar için kullanırız. ICreditManager ihtiyacKrediManager = new IhtiyacKrediManager(); ICreditManager tasitKrediManager = new TasitKrediManager(); ICreditManager konutKrediManager = new KonutKrediManager(); ICreditManager esnafKredisiManager = new EsnafKredisiManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); List <ILoggerService> loggers = new List <ILoggerService> { new SmsLoggerService(), new DatabaseLoggerService() }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(esnafKredisiManager, loggers); List <ICreditManager> krediler = new List <ICreditManager>() { ihtiyacKrediManager, konutKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { //Interfaceleri birbirinin alternatifi olan ama kod içerikleri farklı olan durumlar için kullanırız. IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager esnafKrediManager = new EsnafKredisiManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(esnafKrediManager, new List <ILoggerService>() { smsLoggerService, databaseLoggerService }); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager, konutKrediManager, esnafKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { ICreditManager personalFinanceCreditManager = new PersonalFinanceCreditManager(); ICreditManager vehicleCreditManager = new VehicleCreditManager(); ICreditManager mortgageCreditManager = new MortgageCreditManager(); ICreditManager artisanCreditManager = new ArtisanCreditManager(); ILoggerService smsLoggerService = new SmsLoggerService(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ApplicationManager applicationManager = new ApplicationManager(); applicationManager.MakeAnApplication(vehicleCreditManager, fileLoggerService); Console.WriteLine("-----------------"); applicationManager.MakeAnApplication(mortgageCreditManager, databaseLoggerService); Console.WriteLine("-----------------"); applicationManager.MakeAnApplication(personalFinanceCreditManager, fileLoggerService); Console.WriteLine("-----------------"); applicationManager.MakeAnApplication(artisanCreditManager, smsLoggerService); List <ICreditManager> credits = new List <ICreditManager>() { personalFinanceCreditManager, vehicleCreditManager }; //applicationManager.MakeCreditPreInformation(credits); }
static void Main(string[] args) { IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager esnasKrediManager = new EsnafKredi(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggerServices = new List <ILoggerService>() { new DatabaseLoggerService(), new FileLoggerService(), new SmsLoggerService() }; BasvuruManager basvuruManager = new BasvuruManager(); // basvuruManager.BasvuruYap(ihtiyacKrediManager,new DatabaseLoggerService()); //18.satırla aynı görevi yapar. basvuruManager.BasvuruYap(esnasKrediManager, loggerServices); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; // basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { ICreditManager demandCreditManager = new DemandCreditManager(); ICreditManager transportCreditManager = new TransportCreditManager(); ICreditManager houseCreditManager = new HouseCreditManager(); ICreditManager artisanCreditManager = new ArtisanCreditManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggerServices = new List <ILoggerService> { smsLoggerService, fileLoggerService, databaseLoggerService }; ApplicationManager applicationManager = new ApplicationManager(); applicationManager.DoApplication(artisanCreditManager, loggerServices); List <ICreditManager> credits = new List <ICreditManager> { demandCreditManager, houseCreditManager, transportCreditManager }; //applicationManager.DoCreditPreinformation(credits); }
static void Main(string[] args) { IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager emekliKrediManager = new EmekliKrediManager(); IKrediManager esnafKrediManager = new EsnafKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> logger = new List <ILoggerService>() { smsLoggerService, fileLoggerService, databaseLoggerService }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(emekliKrediManager, logger); List <IKrediManager> krediManagers = new List <IKrediManager>() { tasitKrediManager, ihtiyacKrediManager }; // basvuruManager.KrediOnBilgilendirmesiYap(krediManagers); Console.ReadLine(); }
static void Main(string[] args) { IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasıtKrediManager = new TasıtKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); ILoggerService dataBaseLoggerService = new DataBaseLoggerService(); ILoggerService fileLogerService = new FileLoggerService(); IKrediManager esnafKrediManager = new EsnafKrediManager(); ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(konutKrediManager, dataBaseLoggerService); Console.WriteLine("------------------------------------------------"); basvuruManager.BasvuruYap(tasıtKrediManager, fileLogerService); Console.WriteLine("------------------------------------------------"); basvuruManager.BasvuruYap(esnafKrediManager, smsLoggerService); Console.WriteLine("------------------------------------------------"); // basvuruManager.BasvuruYap(konutKrediManager); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasıtKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { IhtiyacKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); TasitKrediManager tasitKrediManager = new TasitKrediManager(); KonutKerdiManager konutKerdiManager = new KonutKerdiManager(); EsnafKredisiManager esnafKredisiManager = new EsnafKredisiManager(); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager, konutKerdiManager, esnafKredisiManager }; ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FilebaseLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> Loggers = new List <ILoggerService>() { databaseLoggerService, fileLoggerService, smsLoggerService }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(ihtiyacKrediManager, Loggers); basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { RequirementManager requirementManager = new RequirementManager(); TransportCrediManager transportCrediManager = new TransportCrediManager(); HouseCrediManager houseCrediManager = new HouseCrediManager(); ArtisanManager artisanManager = new ArtisanManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoogerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService>() { smsLoogerService, databaseLoggerService, fileLoggerService }; List <ICrediManager> credits = new List <ICrediManager>() { requirementManager, transportCrediManager, houseCrediManager, artisanManager }; ApplicationManager applicationManager = new ApplicationManager(); applicationManager.MakeApplication(artisanManager, loggers); //applicationManager.MakeCreditInformation(credits); }
static void Main(string[] args) { //interfacelerde onu imp eden classların ref numarasını tutar. IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService>() { smsLoggerService, databaseLoggerService }; BasvuruManager basvuruManager = new BasvuruManager(); //IKrediManager tipinde parametre vermiştik. basvuruManager.BasvuruYap(new EsnafKredisiManager(), loggers); //basvuruManager.BasvuruYap(tasitKrediManager, databaseLoggerService); //yazılımda sürdürebilirliği sağlar. //basvuruManager.BasvuruYap(tasitKrediManager,new DatabaseLoggerService()); //kullanıcı gitti tasit kredisine tıkladı o zaman bu kod çalışır. böyle de yazılır. List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager esnafKrediManager = new EsnafKredisiManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); // basvuruManager.BasvuruYap(ihtiyacKrediManager,new DatabaseLoggerService()); //18.satırla aynı görevi yapar. basvuruManager.BasvuruYap(esnafKrediManager, new List <ILoggerService> { new DatabaseLoggerService(), smsLoggerService }); List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; }
static void Main(string[] args) { //PersonalFinanceCreditManager personalFinanceCreditManager = new PersonalFinanceCreditManager(); //personalFinanceCreditManager.Calculate(); //TransportCreditManager transportCreditManager = new TransportCreditManager(); //transportCreditManager.Calculate(); //MortageLoanManager mortageLoanManager = new MortageLoanManager(); //mortageLoanManager.Calculate(); // Interface lerde imlemente edildiği Clasın referans numarasını tutar. // Yukarıda ki kullanımda doğru aşağıdaki kullanımda ICreditManager personalFinanceCreditManager = new PersonalFinanceCreditManager(); ICreditManager transportCreditManager = new TransportCreditManager(); ICreditManager mortageLoanManager = new MortageLoanManager(); ILoggerService dataLoggerService = new DatabaseLoggerService(); ILoggerService filLoggerService = new FileLoggerService(); // şimdi çok güzel bir şekilde yapı kurduk istersek kodumuzu hiç değiştirmeden sadece class ekleyip yeni kredi türleri ve loglama işlemi yapabiliriz. // SOLID kurallarının O kısmı bu ICreditManager tradesmanLoanManager = new TradesmanLoanManager(); ILoggerService smsLoggerService = new SmsLoggerService(); // ***** interfaceleri biribirinin alternatifi olan ama kod içerikleri farklı olan içerikler için kullanırız. // projemizde loglama yapmak istiyoruz. Loglama:Kim ne zaman hangi operasyonu çağırdı. // Loglarımızı bir dosyada tutabiliriz // loglarımızı veri tabanında tutabiliriz. // loglarımızı sms olarakta atabiliriz vb şeyler. // İstenebilir hepsi aynı şeyi loglamayı yapıyor ama farklı işlemler yani interface kullanırız. // bizden 1 tanesi bile istense interface kullanmamız lazım ileride değişiklik istediğini düşün // müşterinin interfacesiz yaparsan bütün sistemin gidebilir tekrar uğraşırsın List <ILoggerService> loggerServices = new List <ILoggerService>() { new DatabaseLoggerService(), new SmsLoggerService() }; List <ICreditManager> creditManagers = new List <ICreditManager>() { new PersonalFinanceCreditManager(), new TransportCreditManager() }; // recourseManager.KrediOnBilgilendirmesiYap(creditManagers); RecourseManager recourseManager = new RecourseManager(); recourseManager.BasvuruYap(tradesmanLoanManager, loggerServices); // Senaryomuz şu bir müşteririmiz var bankaya kredi çekmeye gidiyor araba kredisi çekicek bankacı soruyor taşıt kredisimi istersiniz yoksa ihtiyaç kredisimi diye // şimdi tek kredi hesaplama yapabiliyoruz ama burda 2 tane kredi aynı anda istendi bu yüzden aşağıdki işlemi yapıyoruz. // 2 değil 100 de istenebilir 1000 de vb. bu yüzden herşeyi düşünerek yazılması lazım // aşağıdaki mantık bi liste ytanımladık içine Bizim kredilerin babası sayılan ICreditManager ı attık yani istediğimiz bütün kredileri kolaylıkla çağırabiliriz. // sonrada RecourseManagerda yazdığımız fonksiyonumuzu çağırdık bu fonksiyonda da parametre olarak list ICreditManager verdik böylece bütün kredileri çağırabilmemizi sağladık. }
static void Main(string[] args) { //interface lerde implemente ettikleri classların referansını tutarlar. IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService>() { databaseLoggerService, smsLoggerService }; BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(ihtiyacKrediManager, loggers); //İstediğimiz krediyi gönderiyoruz ve istediğimiz loglamayı seçiyoruz onlar çalışıyor. List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }
static void Main(string[] args) { ICreditManager needCreditManager = new NeedCreditManager(); ICreditManager vehicleCreditManager = new VehicleCreditManager(); ICreditManager housingCreditManager = new HousingCreditManager(); ICreditManager tradesmanCreditManager = new TradesmanCreditManager(); ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService databaseLoggerService = new DatabaseLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); List <ILoggerService> loggers = new List <ILoggerService> { fileLoggerService, databaseLoggerService, smsLoggerService }; RecourseManager recourseManager = new RecourseManager(); recourseManager.DoRecourse(tradesmanCreditManager, loggers); List <ICreditManager> credits = new List <ICreditManager>() { needCreditManager, vehicleCreditManager }; //recourseManager.CreditGivePreliminaryInformation(credits); }
static void Main(string[] args) { ICreditManager ihtiyacCreditManager = new IhtiyacCreditManager(); ICreditManager houseCreditManager = new HouseCreditManager(); ICreditManager vehicleCreditManager = new VehicleCreditManager(); ICreditManager esnafCreditManager = new EsnafCreditManager(); ILoggerService fileLogger = new FileLoggerService(); ILoggerService databaseLogger = new DatabaseLoggerService(); ILoggerService smsLogger = new SmsLoggerService(); //ihtiyacCreditManager.Calculate(); //houseCreditManager.Calculate(); //vehicleCreditManager.Calculate(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.DoBasvuru(vehicleCreditManager, fileLogger); basvuruManager.DoBasvuru(houseCreditManager, databaseLogger); basvuruManager.DoBasvuru(ihtiyacCreditManager, smsLogger); basvuruManager.DoBasvuru(esnafCreditManager, fileLogger); Console.WriteLine("----------------------"); List <ICreditManager> credits = new List <ICreditManager>() { ihtiyacCreditManager, houseCreditManager }; basvuruManager.DoCreditPreview(credits); }
static void Main(string[] args) { //IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); //ihtiyacKrediManager.Hesapla(); //IKrediManager tasitKrediManager = new TasitKrediManager(); //tasitKrediManager.Hesapla(); //IKrediManager konutKrediManager = new KonutKrediManager(); //konutKrediManager.Hesapla(); //interface(IKrediManager) onu implamente eden class(IhtiyacKrediManager)ın referansını tutabilir. //Çok önemli bir bilgidir. IKrediManager ihtiyacKrediManager = new IhtiyacKrediManager(); IKrediManager tasitKrediManager = new TasitKrediManager(); IKrediManager konutKrediManager = new KonutKrediManager(); IKrediManager esnafkrediManager = new EsnafKrediManager(); ILoggerService databaseLoggerService = new DatabaseLoggerService();//BasvuruYap'ı böyle de yazabilirsin. ILoggerService fileLoggerService = new FileLoggerService(); ILoggerService smsLoggerService = new SmsLoggerService(); BasvuruManager basvuruManager = new BasvuruManager(); basvuruManager.BasvuruYap(/*new EsnafKrediManager(), new SmsLoggerService()*/ esnafkrediManager, smsLoggerService /*,new DatabaseLoggerService()*/); //Burada databaseLoggferService olduğu için veri tabanına loglandı yazacak. //Bu bilgi çok önemli. List <IKrediManager> krediler = new List <IKrediManager>() { ihtiyacKrediManager, tasitKrediManager }; //basvuruManager.KrediOnBilgilendirmesiYap(krediler); }