Objektorienteret Programmering

From Teknologisk videncenter
Revision as of 15:29, 22 November 2017 by Mach (talk | contribs)
Jump to: navigation, search

Tirsdag d. 21. November

Jeg er syg idag, så vi laver lige en anderledes undervisningsdag. I skal læse en web-tutorial igennem, og derefter lave en lille opgave.

Begynd Her og fortsæt med at læse igennem til og med "interfaces". Husk at prøve koncepterne af i Visual Studio imens i læser. Vi tager en opsamling på koncepterne imorgen.

Når i bliver færdige med at læse, så begynd at kode følgende opgave (alene, eller sammen med en anden):

Lav kodestrukturen til et simpelt chatsystem (behøver bare at være lokalt på computeren). Der skal være følgende classes (men der må gerne være flere):

User - Indeholder oplysninger om de forskellige brugere og hvilke beskeder de har modtaget fra andre. Eksempler på værdier kunne være: "String name" "List<Message> messages"

Message - Oplysninger om de beskeder der er blevet sendt på netværket. Beskeden skal, udover beskedteksten, have oplysninger om hvilket rum den bliver sendt ud i, og hvem der har sendt beskeden.

Room - Oplysninger om de forskellige chatrooms. Her tænker jeg at hvert rum skal have et navn, og en liste over de forskellige Users der er til stede i det givne rum.

Send mig en mail på "mach@mercantec.dk" hvis i har spørgsmål.

Kode fra Onsdag d. 22. November

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OOP2
{
    class Machine
    {
        //Some code
    }

    class Vehicle : Machine
    {
        protected string brand;
        private double topSpeed;

        public string getBrand()
        {
            return brand;
        }

        public void setBrand(string s)
        {
            this.brand = s;
        }
    }

    class Car : Vehicle
    {
        private int numberOfDoors;

        //Getters and Setters
    }

    class Motorcycle : Vehicle
    {
        private double handlebarWidth;

        public Motorcycle()
        {
            brand = "Harley";
        }
        //Getters and Setters
    }
}


namespace OOP2
{
    class Spaceship
    {
        private double speed = 40;
        protected int barrelSize = 20;

        public virtual int FireWeapon()
        {
            Console.WriteLine("You fired " + barrelSize + " shots!");
            return 0;
        }
    }

    class HeavySpaceship : Spaceship
    {
        private int secondBarrelSize = 10;
        
    }
}


class Pupil
    {
        protected string name;
        protected int age;
        protected double average;

        public Pupil(string name, int age, double average)
        {
            this.name = name;
            this.age = age;
            this.average = average;
        }
    }

    class UnivertyPupil : Pupil
    {
        public UnivertyPupil(string uName, int age, double average) : base(uName, age, average)
        {
        }
    }

Opgavebeskrivelse Onsdag

I skal lave en Zoologisk Have applikation Der SKAL være disse to klasser: Zoo Animal

Jeg skal være i stand til at spørge et objekt af classen Zoo om at give mig et array med alle dyr i parken.

Som øvelse, så skal hver art af dyr være sin egen unikke klasse.

Tilføj features efter eget ønske (spørg om alle dyr med en bestemt højde, alle dyr med vinger, alle dyr som hedder "Georg")