Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            IPersonManager customerManager = new CustomerManager();
            IPersonManager employeeManager = new EmployeManager();

            employeeManager.Add();
            Console.WriteLine("--------");

            ProjectManager projectManager = new ProjectManager();

            projectManager.AddCustomer(new CustomerManager());
            projectManager.AddEmployee(new EmployeManager());
            Console.WriteLine("------");

            ProjectManager2 projectManager2 = new ProjectManager2();

            projectManager2.Add(customerManager);   //Yukarıda new'lediğim için burada gerek yok
            projectManager2.Updated(new InternManager());
        }
Ejemplo n.º 2
0
        //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
        }