static void Main(string[] args) { Manager eray = new Manager { Name = "Eray", Salary = 1000 }; Manager hakan = new Manager { Name = "Hakan", Salary = 1100 }; Calisan semih = new Calisan { Name = "Semih", Salary = 800 }; Calisan mustafa = new Calisan { Name = "Mustafa", Salary = 800 }; eray.employeeBases.Add(hakan); hakan.employeeBases.Add(semih); hakan.employeeBases.Add(mustafa); OrganisationalStructure organisational = new OrganisationalStructure(eray); PayrollVisitor payrollVisitor = new PayrollVisitor(); Payrise payriseVisitor = new Payrise(); organisational.Accept(payrollVisitor); organisational.Accept(payriseVisitor); Console.ReadLine(); }
static void Main(string[] args) { Manager jack = new Manager { Name = "Jack", Salary = 4000 }; Manager john = new Manager { Name = "John", Salary = 3000 }; Worker amy = new Worker { Name = "amy", Salary = 2500 }; Worker peter = new Worker { Name = "Peter", Salary = 1500 }; jack.Subordinates.Add(john); john.Subordinates.Add(amy); john.Subordinates.Add(peter); OrganizationalStructure organizationalStructure = new OrganizationalStructure(jack); PayrollVisitor payrollVisitor = new PayrollVisitor(); Payrise payrise = new Payrise(); organizationalStructure.Accept(payrollVisitor); organizationalStructure.Accept(payrise); Console.ReadLine(); }
static void Main(string[] args) { Manager umut = new Manager { Name = "Umut", Salary = 1100 }; Manager arif = new Manager { Name = "Arif", Salary = 800 }; Worker ahmet = new Worker { Name = "Ahmet", Salary = 600 }; Worker mehmet = new Worker { Name = "Mehmet", Salary = 600 }; umut.Subordinates.Add(arif); arif.Subordinates.Add(ahmet); arif.Subordinates.Add(mehmet); OrganisationalStructure organisationalStructure = new OrganisationalStructure(umut); PayrollVisitor payrollVisitor = new PayrollVisitor(); Payrise payrise = new Payrise(); organisationalStructure.Accept(payrollVisitor); organisationalStructure.Accept(payrise); Console.ReadLine(); }
static void Main(string[] args) { /*Genel olarak birbirine benziyen ve hiyerarşi nesnelerin aynı methodunun biri üzerinden çağırılması.*/ Manager manager1 = new Manager { Name = "okan", Salary = 1000 }; Manager manager2 = new Manager { Name = "cenk", Salary = 900 }; Worker worker = new Worker { Name = "Eleman", Salary = 500 }; Worker worker1 = new Worker { Name = "Eleman1", Salary = 500 }; Worker worker2 = new Worker { Name = "Eleman2", Salary = 500 }; manager1.Subordinates.Add(worker); manager1.Subordinates.Add(worker1); manager2.Subordinates.Add(worker2); OrganisationalStructure organisationalStructure = new OrganisationalStructure(manager1); PayrollVisitor payrollVisitor = new PayrollVisitor(); Payrise payrise = new Payrise(); organisationalStructure.Accept(payrollVisitor); organisationalStructure.Accept(payrise); Console.ReadLine(); }