Exemplo n.º 1
0
        public void Employee_ShowsReportingTree()
        {
            var director = new DirectorOfEngineering("Jonathan", "Director of Engineering");

            var teamLead1 = new SoftwareEngineer("Ryan", "Software Engineer Team Lead");
            var engineer1 = new SoftwareEngineer("Tonya", "Senior Software Engineer");
            var engineer2 = new SoftwareEngineer("Andrew", "Senior Software Engineer");
            var engineer3 = new SoftwareEngineer("Jason", "Software Engineer");

            teamLead1.DirectReports.Add(engineer1);
            teamLead1.DirectReports.Add(engineer2);
            teamLead1.DirectReports.Add(engineer3);

            var teamLead2 = new DatabaseAdministrator("Anthony", "Database Team Lead");
            var dba1      = new DatabaseAdministrator("Jyoti", "Database Developer");
            var dba2      = new DatabaseAdministrator("Robert", "Database Administrator");

            teamLead2.DirectReports.Add(dba1);
            teamLead2.DirectReports.Add(dba2);

            director.DirectReports.Add(teamLead1);
            director.DirectReports.Add(teamLead2);

            var test = director.GetEmployeeData();
        }
Exemplo n.º 2
0
        public static TServiceInterface CreateInstance <TServiceInterface>(Func <string, object[], object> call,
                                                                           Action <string, Delegate, Action <object, EventArgs> > subscribe,
                                                                           Action <string, Delegate> unsubscribe)
        {
            using (EneterTrace.Entering())
            {
                Type anInterfaceType = typeof(TServiceInterface);
                if (!anInterfaceType.IsInterface)
                {
                    string anErrorMessage = "Provided service interface '" + anInterfaceType.Name + "' is not interface.";
                    EneterTrace.Error(anErrorMessage);
                    throw new ArgumentException(anErrorMessage);
                }


                Type anImplementedClass = null;
                using (ThreadLock.Lock(myImplementedInterfaces))
                {
                    myImplementedInterfaces.TryGetValue(anInterfaceType, out anImplementedClass);
                    if (anImplementedClass == null)
                    {
                        // Dynamically implement proxy for the given interface.
                        SoftwareEngineer anEngineer = new SoftwareEngineer();
                        anImplementedClass = anEngineer.ImplementProxy(anInterfaceType);

                        myImplementedInterfaces[anInterfaceType] = anImplementedClass;
                    }

                    // Instantiate the proxy.
                    TServiceInterface aProxyInstance = (TServiceInterface)Activator.CreateInstance(anImplementedClass, call, subscribe, unsubscribe);
                    return(aProxyInstance);
                }
            }
        }
Exemplo n.º 3
0
        public MainWindow()
        {
            InitializeComponent();
            //Sets the level/campus building's hoverOver status
            buildingSetUp();
            //Apply all five buttons to the MouseLeave event handler
            //When a the mouse leaves one of the five character buttons the button should be set to hidden
            btnCharacter1.MouseLeave += character_MouseLeave;
            btnCharacter2.MouseLeave += character_MouseLeave;
            btnCharacter3.MouseLeave += character_MouseLeave;
            btnCharacter4.MouseLeave += character_MouseLeave;
            btnCharacter5.MouseLeave += character_MouseLeave;

            //Fill in array of heroes with testers
            SoftwareEngineer    Cedric = new SoftwareEngineer("Cedric", true);
            NetworkArchitect    Malane = new NetworkArchitect("Malane", true);
            InformationSecurity Tom    = new InformationSecurity("Tom", true);
            SystemsAnalyst      Tyler  = new SystemsAnalyst("Tyler", true);
            SupportEngineer     Sandy  = new SupportEngineer("Sandy", false);

            chosenHeroes[0] = Malane;
            chosenHeroes[1] = Cedric;
            chosenHeroes[2] = Tom;
            chosenHeroes[3] = Tyler;
            chosenHeroes[4] = Sandy;
        }
Exemplo n.º 4
0
    static void Main(string[] args)
    {
        SoftwareEngineer engineer = new SoftwareEngineer();

        engineer.name = "Betty";

        Console.WriteLine(engineer.ToString());
    }
Exemplo n.º 5
0
        public MainWindow()
        {
            InitializeComponent();
            SoftwareEngineer  Henk   = new SoftwareEngineer("Henk", 54);
            SoftwareEngineer  Gerard = new SoftwareEngineer("Gerard", 30);
            SoftwareEngineer  Peter  = new SoftwareEngineer("Peter", 28);
            SoftwareArchitect Pieter = new SoftwareArchitect("Pieter", 43);
            TeamLead          Jan    = new TeamLead(new SoftwareArchitect("Jan", 50));
            TeamLead          Pierri = new TeamLead(new SoftwareArchitect("Pierri", 50));

            Jan.Add(Gerard);

            listOfEmployees.ItemsSource = AllEmployeeList;
        }
Exemplo n.º 6
0
        static void RunPart2()
        {
            //          new Employee().RunTestSuite();
            Employee.RunRupertScott();
            ConsoleWriteLine();

            //          new Engineer().RunTestSuite();
            //           Engineer.RunToniBucci();
            // ConsoleWriteLine();

            //          new SoftwareEngineer().RunTestSuite();
            SoftwareEngineer.RunSheaRovington();
            ConsoleWriteLineDONE();
        }
Exemplo n.º 7
0
        static void Main(string[] args)
        {
            #region Encapsulation
            SoftwareEngineer softwareEngineer = new SoftwareEngineer("Jeff", "Bezos", 33, "Amazon", "C#");
            softwareEngineer.BuildProject();

            CarEngineer carEngineer = new CarEngineer("Ayrton", "Senna", 60, "McLaren");
            carEngineer.BuildProject();
            #endregion

            #region Inheritance
            FrontEndDeveloper frontEndDeveloper = new FrontEndDeveloper("Michael", "Jordan", "React.js");
            frontEndDeveloper.Position();
            frontEndDeveloper.Experience();

            BackEndDeveloper backEndDeveloper = new BackEndDeveloper("Elon", "Musk", 7, "San Francisco", "US");
            backEndDeveloper.Position();
            backEndDeveloper.Experience();
            backEndDeveloper.Team();
            #endregion

            #region Polymorphism
            WebDeveloper webDeveloper = new WebDeveloper("C#");
            webDeveloper.Code();
            webDeveloper.Code("JavaScrit");

            List <Developer> developers = new List <Developer>()
            {
                new WebDeveloper("JavaScript"), new AppDeveloper("React.js")
            };
            foreach (var item in developers)
            {
                item.Code();
            }
            #endregion
        }
Exemplo n.º 8
0
        public EmployeeRepository()
        {
            Employee both = new SoftwareArchitect
            {
                FirstName             = "Bo",
                LastName              = "Ramsdahl Thomassen",
                Level                 = SoftwareArchitectLevel.Senior,
                VisioDrawingsProduced = 87
            };
            Employee henrmo = new SoftwareEngineer
            {
                FirstName         = "Henrik",
                LastName          = "Leth Mortensen",
                Level             = SoftwareEngineerLevel.Senior,
                CodeLinesProduced = 251723
            };
            Employee jepk = new SoftwareEngineer
            {
                FirstName         = "Jeppe",
                LastName          = "Thestrup Knudsen",
                Level             = SoftwareEngineerLevel.Senior,
                CodeLinesProduced = 235919
            };
            Employee rm = new SoftwareArchitect
            {
                FirstName             = "Rasmus",
                LastName              = "Holm Mortensen",
                Level                 = SoftwareArchitectLevel.Senior,
                VisioDrawingsProduced = 42
            };
            Employee nilad = new BusinessAnalyst
            {
                FirstName = "Nina",
                LastName  = "Holewińska Ladefoged"
            };
            Employee ntho = new ProjectManager
            {
                FirstName = "Nils",
                LastName  = "Gram Thomassen",
                Level     = ProjectManagerLevel.Senior,
                Team      = "Banzai Raccoons"
            };
            Employee phe = new StudentProgrammer
            {
                FirstName  = "Peter",
                LastName   = "Nethan Henriksen",
                MentoredBy = jepk
            };
            Employee jeshe = new SoftwareEngineer
            {
                FirstName         = "Jesper",
                LastName          = "Gulmann Henriksen",
                Level             = SoftwareEngineerLevel.Lead,
                CodeLinesProduced = 176
            };

            _employees = new Employee[]
            {
                both, henrmo, jepk, rm, nilad, ntho, phe, jeshe
            };
        }
        static void Main(string[] args)
        {
            IWaiter waiter =
                new Waiter(
                    DataGenerator.GenerateMaleName(),
                    DataGenerator.GenerateAge(),
                    HairColorType.Blue,
                    EyesColorType.Brown,
                    FaceShapeType.Heart,
                    RaceType.European,
                    GenderType.Male,
                    ReligionType.Hinduism);

            IHuman softwareEngineer =
                new SoftwareEngineer(
                    DataGenerator.GenerateMaleName(),
                    DataGenerator.GenerateAge(),
                    HairColorType.Brown,
                    EyesColorType.Green,
                    FaceShapeType.Diamond,
                    RaceType.Indian,
                    GenderType.Male,
                    ReligionType.Christianity);

            IHuman standardHuman =
                new Human(
                    DataGenerator.GenerateFemaleName(),
                    DataGenerator.GenerateAge(),
                    HairColorType.Brown,
                    EyesColorType.Green,
                    FaceShapeType.Diamond,
                    RaceType.African,
                    GenderType.Female,
                    ReligionType.Agnosticism);

            // Work to make some money
            softwareEngineer.Work(10);
            softwareEngineer.Work(9);
            softwareEngineer.Work(14);
            softwareEngineer.Work(11);

            standardHuman.Work(7);
            standardHuman.Work(8);
            standardHuman.Work(9);
            standardHuman.Work(8);

            var restaurantCapacity         = 120;
            var restaurantName             = "Wailey's Restaurant";
            var restaurantAddress          = "Malibu street, 147";
            IRestaurantBuilding restaurant =
                new RestaurantBuilding(
                    restaurantName,
                    restaurantAddress,
                    restaurantCapacity);

            restaurant.HireWaiter(waiter);
            restaurant.AcceptClient(softwareEngineer);
            restaurant.AcceptClient(standardHuman);

            restaurant.ProcessClientRequests();
        }
Exemplo n.º 10
0
        public void placeCharacter()
        {
            heroes = new Hero[5];
            for (int i = 0; i < 5; i++)
            {
                switch (job_type[i])
                {
                case "Software Engineer":
                {
                    heroes[i] = new SoftwareEngineer(hero_name[i], gender[i]);
                    break;
                }

                case "Support Engineer":
                {
                    heroes[i] = new SupportEngineer(hero_name[i], gender[i]);
                    break;
                }

                case "Systems Analyst":
                {
                    heroes[i] = new SystemsAnalyst(hero_name[i], gender[i]);
                    break;
                }

                case "Network Architect":
                {
                    heroes[i] = new NetworkArchitect(hero_name[i], gender[i]);
                    break;
                }

                case "Information Security":
                {
                    heroes[i] = new InformationSecurity(hero_name[i], gender[i]);
                    break;
                }

                default:
                {
                    break;
                }
                }
            }
            heroOneSlot.Source   = heroes[0].CharacterPortrait;
            heroTwoSlot.Source   = heroes[1].CharacterPortrait;
            heroThreeSlot.Source = heroes[2].CharacterPortrait;
            heroFourSlot.Source  = heroes[3].CharacterPortrait;
            heroFiveSlot.Source  = heroes[4].CharacterPortrait;

            nameLabelOne.Content   = heroes[0].Name;
            nameLabelTwo.Content   = heroes[1].Name;
            nameLabelThree.Content = heroes[2].Name;
            nameLabelFour.Content  = heroes[3].Name;
            nameLabelFive.Content  = heroes[4].Name;

            genderLabelOne.Content   = heroes[0].Male;
            genderLabelTwo.Content   = heroes[1].Male;
            genderLabelThree.Content = heroes[2].Male;
            genderLabelFour.Content  = heroes[3].Male;
            genderLabelFive.Content  = heroes[4].Male;

            jobLabelOne.Content   = heroes[0].JobRole;
            jobLabelTwo.Content   = heroes[1].JobRole;
            jobLabelThree.Content = heroes[2].JobRole;
            jobLabelFour.Content  = heroes[3].JobRole;
            jobLabelFive.Content  = heroes[4].JobRole;
        }
        private void AcceptButton_Click(object sender, RoutedEventArgs e)
        {
            tempName = NameBox.Text;

            if (!((tempName == "") || (tempName == "Enter Name.")))
            {
                switch (tempJobRole)
                {
                case "Software Engineer":
                {
                    heroes[heroSlot] = new SoftwareEngineer(tempName, tempGender);
                    break;
                }

                case "Support Engineer":
                {
                    heroes[heroSlot] = new SupportEngineer(tempName, tempGender);
                    break;
                }

                case "Systems Analyst":
                {
                    heroes[heroSlot] = new SystemsAnalyst(tempName, tempGender);
                    break;
                }

                case "Network Architect":
                {
                    heroes[heroSlot] = new NetworkArchitect(tempName, tempGender);
                    break;
                }

                case "Information Security":
                {
                    heroes[heroSlot] = new InformationSecurity(tempName, tempGender);
                    break;
                }

                default:
                {
                    break;
                }
                }
                if (Checker())
                {
                    confirmButtonSwitch();
                }
                CustomizeWindowGrid.Visibility = Visibility.Hidden;
                BlackOut.Visibility            = Visibility.Hidden;

                switch (heroSlot)
                {
                case 0:
                {
                    heroOneSlot.Source   = heroes[heroSlot].CharacterPortrait;
                    nameLabelOne.Content = heroes[heroSlot].Name;
                    jobLabelOne.Content  = heroes[heroSlot].JobRole;
                    if (heroes[heroSlot].Male)
                    {
                        genderLabelOne.Content = "Male";
                    }
                    else
                    {
                        genderLabelOne.Content = "Female";
                    }
                    break;
                }

                case 1:
                {
                    heroTwoSlot.Source   = heroes[heroSlot].CharacterPortrait;
                    nameLabelTwo.Content = heroes[heroSlot].Name;
                    jobLabelTwo.Content  = heroes[heroSlot].JobRole;
                    if (heroes[heroSlot].Male)
                    {
                        genderLabelTwo.Content = "Male";
                    }
                    else
                    {
                        genderLabelTwo.Content = "Female";
                    }
                    break;
                }

                case 2:
                {
                    heroThreeSlot.Source   = heroes[heroSlot].CharacterPortrait;
                    nameLabelThree.Content = heroes[heroSlot].Name;
                    jobLabelThree.Content  = heroes[heroSlot].JobRole;
                    if (heroes[heroSlot].Male)
                    {
                        genderLabelThree.Content = "Male";
                    }
                    else
                    {
                        genderLabelThree.Content = "Female";
                    }
                    break;
                }

                case 3:
                {
                    heroFourSlot.Source   = heroes[heroSlot].CharacterPortrait;
                    nameLabelFour.Content = heroes[heroSlot].Name;
                    jobLabelFour.Content  = heroes[heroSlot].JobRole;
                    if (heroes[heroSlot].Male)
                    {
                        genderLabelFour.Content = "Male";
                    }
                    else
                    {
                        genderLabelFour.Content = "Female";
                    }
                    break;
                }

                case 4:
                {
                    heroFiveSlot.Source   = heroes[heroSlot].CharacterPortrait;
                    nameLabelFive.Content = heroes[heroSlot].Name;
                    jobLabelFive.Content  = heroes[heroSlot].JobRole;
                    if (heroes[heroSlot].Male)
                    {
                        genderLabelFive.Content = "Male";
                    }
                    else
                    {
                        genderLabelFive.Content = "Female";
                    }
                    break;
                }

                default:
                {
                    break;
                }
                }
            }
            else
            {
                NameBox.Text = "Enter Name.";
            }
        }