Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            #region Task
            //Person p1 = new Person();
            //Person p2 = new Person();
            //Console.WriteLine(p1.Id);
            //Console.WriteLine(p2.Id);
            #endregion

            #region Abstract - can't get instance,contains abstract method and property
            //Eagle eagle = new Eagle();
            //Shark shark = new Shark();

            //string word = "";
            //ShowHowEat(eagle);
            //ShowHowEat(shark);
            //Person person = new Person();
            //Car car = new Car();
            //ShowHowMove(car);
            //ShowHowMove(person);
            #endregion

            #region Sealed - class - can't get inheretance
            SoftwareDeveloper sd = new SoftwareDeveloper();
            sd.Knowledge();
            #endregion
        }
        public static string GetSoftwareDeveloper(this SoftwareDeveloper softwareDeveloper)
        {
            var stringBuilder = new StringBuilder(1024);
            var personDetails = stringBuilder
                                .Append("Name: Shiva")
                                .Append("\nAge: 25")
                                .Append("\nSalary: 1234.56");

            return(personDetails.ToString());
        }
Ejemplo n.º 3
0
        public void ToString_RunToStringOnInheritedType_InheritedTypeIncludesBaseProperties()
        {
            // Arrange
            Employee joe = new Employee()
            {
                Id        = 13298278,
                Title     = "Managing Director",
                FirstName = "Joe",
                LastName  = "Bloggs",
                Emails    = new string[]
                {
                    "*****@*****.**",
                    "*****@*****.**"
                },
                Manager = null,
            };

            SoftwareDeveloper phillip = new SoftwareDeveloper()
            {
                Id        = 13298329,
                Title     = "Senior Software Developer",
                FirstName = "Phillip",
                LastName  = "Jeffries",
                Emails    = new string[] {
                    "*****@*****.**"
                },
                Manager    = joe,
                Speciality = SoftwareDeveloper.SpecialityOption.Java,
            };
            string expectedToStringValue =
                "SoftwareDeveloper (" +
                "Speciality = Java, " +
                "Title = Senior Software Developer, " +
                "FirstName = Phillip, " +
                "LastName = Jeffries, " +
                "Emails = System.String[], " +
                "Manager = Employee (" +
                "Title = Managing Director, " +
                "FirstName = Joe, " +
                "LastName = Bloggs, " +
                "Emails = System.String[], " +
                "Manager = null, " +
                "Id = 13298278" +
                "), " +
                "Id = 13298329" +
                ")";
            string actualToStringValue = null;

            // Act
            actualToStringValue = phillip.ToString();

            // Assert
            Assert.AreEqual(expectedToStringValue, actualToStringValue);
        }
Ejemplo n.º 4
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            switch (cmbTitleType.SelectedItem)
            {
            case "Software Developer":
                SoftwareDeveloper sd = new SoftwareDeveloper();
                sd.Name    = txtName.Text;
                sd.Surname = txtSurname.Text;
                sd.Age     = Convert.ToInt32(txtAge.Text);
                MessageBox.Show($"Salary is {sd.Salary} $");
                lstEmployees.Items.Add(sd);
                Clear();
                break;

            case "Designer":
                Designer d = new Designer();
                d.Name    = txtName.Text;
                d.Surname = txtSurname.Text;
                d.Age     = Convert.ToInt32(txtAge.Text);
                MessageBox.Show($"Salary is {d.Salary} $");
                lstEmployees.Items.Add(d);
                break;

            case "Secretary":
                Secretary s = new Secretary();
                s.Name    = txtName.Text;
                s.Surname = txtSurname.Text;
                s.Age     = Convert.ToInt32(txtAge.Text);
                MessageBox.Show($"Salary is {s.Salary} $");
                lstEmployees.Items.Add(s);
                Clear();
                break;

            case "Database Administrator":
                DatabaseAdministrator db = new DatabaseAdministrator();
                db.Name    = txtName.Text;
                db.Surname = txtSurname.Text;
                db.Age     = Convert.ToInt32(txtAge.Text);
                MessageBox.Show($"Salary is {db.Salary} $");
                lstEmployees.Items.Add(db);
                Clear();
                break;

            default:
                MessageBox.Show("Please Select Title");
                break;
            }
        }
        public Boolean Create()
        {
            Console.WriteLine("Package received...");

            var received = Request.Form.Keys;

            foreach (var key in received)
            {
                var json = JObject.Parse(key);

                var name  = json["name"].ToString();
                var email = json["email"].ToString();
                var role  = json["role"].ToString();

                Console.WriteLine(name);
                Console.WriteLine(email);

                var dev = new SoftwareDeveloper();
                dev.Name     = name;
                dev.Email    = email;
                dev.HireYear = DateTime.Now.Year;
                dev.Role     = role;
                Console.WriteLine(dev.HireYear.GetType());

                dev.ProjectId = -1;
                var emptyProject = (_context.projects.Where(prj => prj.Id == -1)).First();

                dev.Project = emptyProject;

                var vacation = new Vacation
                {
                    AnnualLeave        = 20,
                    BloodDonationLeave = 5,
                    FourHourLeave      = 8,
                };

                dev.Vacation = vacation;
                _context.softwareDevelopers.Add(dev);
                _context.SaveChanges();
                return(true);
            }

            return(true);
        }
Ejemplo n.º 6
0
        public void MeaningfulToString_OnlyIncludeClassProperties_EnsureOutputIsCorrect()
        {
            // Arrange
            Employee joe = new Employee()
            {
                Id        = 13298278,
                Title     = "Managing Director",
                FirstName = "Joe",
                LastName  = "Bloggs",
                Emails    = new string[]
                {
                    "*****@*****.**",
                    "*****@*****.**"
                },
                Manager = null,
            };

            SoftwareDeveloper phillip = new SoftwareDeveloper()
            {
                Id        = 13298329,
                Title     = "Senior Software Developer",
                FirstName = "Phillip",
                LastName  = "Jeffries",
                Emails    = new string[] {
                    "*****@*****.**"
                },
                Manager    = joe,
                Speciality = SoftwareDeveloper.SpecialityOption.CSharp,
            };

            string expectedToStringValue =
                "SoftwareDeveloper (" +
                "Speciality = CSharp" +
                ")";
            string actualToStringValue = null;

            // Act
            actualToStringValue = phillip.MeaningfulToString(
                includeBaseProperties: false);

            // Assert
            Assert.AreEqual(expectedToStringValue, actualToStringValue);
        }
        private static void AbstractNormalVirtualMethods()
        {
            SoftwareDeveloper sd = new SoftwareDeveloper("SoftwareDeveloper1");
            Employee          e  = (Employee)sd;    //same instance as above

            //Normal method
            Console.Write("\n###Hide");
            sd.PrintWageNormal();
            e.PrintWageNormal();

            //Virtual method
            Console.Write("\n###Override");
            sd.PrintWageVirtual();
            e.PrintWageVirtual();

            //Abstract method
            Console.WriteLine("\n###Abstract");
            sd.PrintWageAbstract();
            e.PrintWageAbstract();
        }
        private static void CustomInterface()
        {
            //var softwareDeveloper = new SoftwareDeveloper {KnownProgrammingLanguages = new[] {"C#", "Java"}};
            var softwareDeveloper = new SoftwareDeveloper("SoftwareDeveloper1");

            softwareDeveloper.Languages = new[] { "C#", "Java" };

            var manager = new Manager("Manager1");

            var contractor = new Contractor("Contractor1");

            contractor.Languages = new[] { "C#" };

            Person[] persons = new Person[] { softwareDeveloper, manager, contractor };

            Console.WriteLine("###Using \"is\"");
            foreach (var person in persons)
            {
                if (person is IDeveloper)
                {
                    Console.WriteLine("{0}: {1}",
                                      person.Name,
                                      string.Join(", ", ((IDeveloper)person).Languages));
                }
            }
            Console.WriteLine();

            Console.WriteLine("###Using \"as\"");
            foreach (var person in persons)
            {
                //IKnownProgrammingLanguages castToInterface = person as IKnownProgrammingLanguages;
                var castToInterface = person as IDeveloper;

                if (castToInterface != null)
                {
                    Console.WriteLine("{0}: {1}",
                                      person.Name,
                                      string.Join(", ", castToInterface.Languages));
                }
            }
        }
Ejemplo n.º 9
0
        private Project createProject(string ProjectName, bool isNull, string[] DevNames, string[] Emails, int[] HireYears, string[] Roles)
        {
            var project = new Project
            {
                ProjectName = ProjectName
            };

            if (isNull == true)
            {
                return(project);
            }

            project.SoftwareDevelopers = new List <SoftwareDeveloper>();

            for (int i = 0; i < DevNames.Length; i++)
            {
                var dev = new SoftwareDeveloper
                {
                    Name     = DevNames[i],
                    Email    = Emails[i],
                    HireYear = HireYears[i],
                    Role     = Roles[i],
                    Project  = project,
                };

                var vacation = new Vacation
                {
                    AnnualLeave         = 20,
                    BloodDonationLeave  = 5,
                    FourHourLeave       = 8,
                    SoftwareDeveloperId = dev.Id,
                    SoftwareDeveloper   = dev
                };

                dev.Vacation = vacation;

                project.SoftwareDevelopers.Add(dev);
            }

            return(project);
        }
        static void Main(string[] args)
        {
            ForegroundColor = ConsoleColor.Blue;

            // Method Chaining Sample 1
            var stringBuilder = new StringBuilder(1024);
            var personDetails = stringBuilder
                                .Append("Name: Shiva")
                                .Append("\nAge: 25")
                                .Append("\nSalary: 1234.56");

            WriteLine(personDetails);


            // Method Chaining Sample 2
            WriteLine($"\n\n==================== Sample 2 Custom Class ====================");
            SoftwareDeveloper softwareDeveloper = new SoftwareDeveloper();

            softwareDeveloper
            .GathersRequirements()
            .WritesCode()
            .WriteUnitTests()
            .DeploysCodeToProduction();
            WriteLine($"-------------------- Sample 2 Custom Class --------------------\n\n");


            // Extension Method Demo
            var number1 = "125";

            var(value, parsed) = number1.ParseToInteger();
            WriteLine($"{number1} was {parsed} and its value is {value}");

            number1         = "A125";
            (value, parsed) = number1.ParseToInteger();
            WriteLine($"{number1} was {parsed} and its value is {value}");

            WriteLine("\n\nPress any key ...");
            ReadKey();
        }
        private static void AbstractNormalVirtualMethodsArray()
        {
            var softwareDeveloper = new SoftwareDeveloper("SoftwareDeveloper1");
            var manager           = new Manager("Manager1");

            Employee[] employees = new Employee[] { softwareDeveloper, manager };

            foreach (var employee in employees)
            {
                employee.PrintWageNormal();
            }

            foreach (var employee in employees)
            {
                employee.PrintWageVirtual();
            }

            foreach (var employee in employees)
            {
                employee.PrintWageAbstract();
            }
        }
Ejemplo n.º 12
0
        static void Main(string[] args)
        {
            SoftwareDeveloper sd1 = new SoftwareDeveloper(48090, "naynish", "chaughule");
            EmployeeCollection.Add(sd1);
            SoftwareDeveloper sd2 = new SoftwareDeveloper(48091, "tripti", "panjabi");
            EmployeeCollection.Add(sd2);

            //setting up a project
            SetUpProject(110, "dhp", new DateTime(2012, 01, 01), DateTime.Now.Add(new TimeSpan(90, 0, 0, 0)));
            SetUpProject(110, "motorola", new DateTime(2012, 01, 01), DateTime.Now.Add(new TimeSpan(90, 0, 0, 0)));

            //setting up tasks
            SetUpTask(1890, "rent calculation", new DateTime(2012, 02, 07), DateTime.Now.Add(new TimeSpan(90, 0, 0)), 20, 16);
            SetUpTask(1891, "LR/LD", new DateTime(2012, 03, 07), DateTime.Now.Add(new TimeSpan(90, 0, 0)), 20, 16);
            SetUpTask(1892, "system testing", new DateTime(2012, 03, 07), DateTime.Now.Add(new TimeSpan(90, 0, 0)), 20, 16);

            //adding tasks to the project
            pArr[0].AddTask(taskArr[0]);
            pArr[0].AddTask(taskArr[1]);
            pArr[1].AddTask(taskArr[2]);

            //assigning project to the employee
            sd1.AssignProject(pArr[0]);
            sd2.AssignProject(pArr[1]);

            //calculating the total budget for the project
            Console.WriteLine("Total budget of project {0} = {1:C}", pArr[0].PName, pArr[0].ProjectBudget());
            Console.WriteLine("No. of employees in project {0} = {1}", pArr[0].PName, pArr[0].ProjectEmployeeCount());
            Console.WriteLine();
            //list all the tasks of an employee
            Console.WriteLine("All tasks of {0}", sd2.Fname);
            sd2.ListAllMyTasks();
            Console.WriteLine();
            UtilityClass ucObj = new UtilityClass();
            ucObj.SalaryOfEachEmployeeInProject(pArr[1]);

            Console.WriteLine();
            Console.ReadLine();
        }
Ejemplo n.º 13
0
        static void Main(string[] args)
        {
            ForegroundColor = ConsoleColor.Yellow;

            StringBuilder personDetails = new StringBuilder(1024);

            personDetails
            .Append("Item 1")
            .Append("\nItem 2")
            .Append("\nItem 3");
            WriteLine(personDetails);

            // Method Chaining Sample 2
            var softwareDeveloper = new SoftwareDeveloper();

            WriteLine($"\n\n==================== Sample 2 Custom Class ====================");
            softwareDeveloper
            .GathersRequirements()
            .WritesCode()
            .WriteUnitTests()
            .DeploysCodeToProduction();
            WriteLine($"-------------------- Sample 2 Custom Class --------------------\n\n");


            WriteLine(softwareDeveloper.GetSoftwareDeveloper());

            var number1 = "125";

            var(value, parsed) = number1.ParseToInteger();
            WriteLine($"{number1} was {parsed} and its value is {value}");

            number1         = "A125";
            (value, parsed) = number1.ParseToInteger();
            WriteLine($"{number1} was {parsed} and its value is {value}");

            WriteLine("\n\nPress any key ...");
            ReadKey();
        }
Ejemplo n.º 14
0
        private static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            var person = new Person("Kishor", "Naik");

            Console.WriteLine(person);

            // Here we can not set First Name, it will give error
            //p1.FirstName = "Eshaan";

            // but if we want to set First Name Property by using "with" keyword.
            person = person with {
                FirstName = "Eshaan"
            };
            Console.WriteLine(person);

            // Destruct records Object into tuples
            var(FirstName, LastName) = person;
            Console.WriteLine($"FirstName : {FirstName} | LastName : {LastName}");

            // Serialize and Deserialize
            var personJson = JsonSerializer.Serialize(person);

            Console.WriteLine(personJson);

            person = JsonSerializer.Deserialize <Person>(personJson);
            Console.WriteLine(person);

            // Employee
            var employee1 = new Employee()
            {
                FirstName = "Kishor",
                LastName  = "Naik"
            };

            //employee.FirstName = "Eshaan"; // Not possible to set value becuase of init

            var employee2 = new Employee()
            {
                FirstName = "Kishor",
                LastName  = "Naik"
            };

            // Objects comparison
            Console.WriteLine(employee1 == employee2); // true

            var employee3 = employee1 with {
                FirstName = "Eshaan"
            };

            Console.WriteLine(employee1 == employee3); // false

            // Inheritance
            Employee employee4 = new SoftwareDeveloper()
            {
                FirstName = "Kishor",
                LastName  = "Naik",
                Type      = "Database Develoepr"
            };

            Console.WriteLine(employee4);
            Console.WriteLine(employee4.FirstName);
            Console.WriteLine(employee4.LastName);

            SoftwareDeveloper softwareDeveloper = employee4 as SoftwareDeveloper;

            Console.WriteLine(softwareDeveloper);
            Console.WriteLine(softwareDeveloper.FirstName);
            Console.WriteLine(softwareDeveloper.LastName);
            Console.WriteLine(softwareDeveloper.Type);
        }
    }