static void Main(string[] args) { IPersonManager customerManager = new CustomerManager(); customerManager.Add(); customerManager.Update(); IPersonManager employeeManager = new EmployeeManager(); employeeManager.Add(); employeeManager.Update(); ProjectManager projectManager = new ProjectManager(); projectManager.Add(employeeManager); }
//Hepsi inheritance altında ki add içinde işlem yapacaksa Inheritance. //Hepsinin ayrı ayrı içinde add i olacak ve farklı işlemler kendi add leri altında olacaksa Interface. #endregion static void Main(string[] args) { #region Inheritance //Inheritance //Property Person customer = new Customer(); customer.Id = 2; Console.WriteLine(customer.Id); //Method PersonManager customerManager = new CustomerManager(); customerManager.Add(); //project manager üzerinde dinamik bir yapı için. ProjectManager2 projectManager2 = new ProjectManager2(); projectManager2.Add(customerManager); // -- projectManager2.Add(new CustomerManager()); şeklinde de yazılabilir. projectManager2.Add(new AManager()); // yeni bir class eklendiğinde. #endregion #region Interface //Interface //Property IPerson employee = new Employee(); employee.Id = 1; Console.WriteLine(employee.Id); //Method IPersonManager employeeManager = new EmployeeManager(); employeeManager.Add(); employeeManager.Update(); //project manager üzerinde dinamik bir yapı için. ProjectManager1 projectManager1 = new ProjectManager1(); projectManager1.Add(employeeManager); // -- projectManager1.Add(new EmployeeManager()); şeklinde de yazılabilir. projectManager1.Update(employeeManager); // -- projectManager1.Update(new EmployeeManager()); şeklinde de yazılabilir. projectManager1.Add(new BManager()); // yeni bir class eklendiğinde. projectManager1.Update(new BManager()); // yeni bir class eklendiğinde. #endregion }