This is an old revision of the document!


Start på Programmering C

Koden från genomgång nr1 på OOP

  1. Se på video och gör alla steg 1-22 på denna sida. Detta är det mest grundläggande i Programmering C så se till att ni förstår alla steg och att ni gör alla steg själv också.
  2. Du skall med hjälp av din kunskap av klasser göra en klass fordon. Tänk noga igenom namngivning av klasser, metoder och variabler.
    • Klassen fordon skall ha en metod (Methods) getInfo() som returnerar information om objektet.
    • Klassen skall ha minst 3 variabler (Properties) (vikt, topphastighet och registrerings_id) som är protected.
    • Klassen fordon skall ha en konstruktor som sätter minst registrerings_id, gärna mer.
    • Man skall kunna hämta och ändra klassens variabler via publika metoder. OBS! två metoder per variabel.
  3. Du skall från klassen fordon ärva minst 3 olika typer av fordon
    • Varje klass som ärvs skall ha minst en egen variabel som man kan hämta och ändra via publika metoder.
    • Varje klass som ärvs av fordon skall “override”:a metoden getInfo() och via den funktionen skall det tydligt framgå vilket typ av fordon det är.
  4. Vi ska nu ansluta till en databas på ett objektorienterat sätt via klassen mysqli och hämta data via mysqli-result.
    Se ett litet exempel på mysqli.
    • Din uppgift blir att än en gång göra om frågesporten men nu skall ni lägga in och hämta data via mysqli och mysqli-result.
  5. Du har nu gjort en klass fordon och från den har du ärvt minst 3 klasser, du har också tittat på hur man kan prata med en databas på ett objektorienterat sätt. Din uppgift blir att göra en klass garage.
    • Klassen skall klara av att parkera alla olika typer av fordon som du har gjort.
    • Garage skall ärvas från klassen mysqli.
    • Din klass garage skall spara all information i databasen lämpligt är att använda serialize och unserialize. På det viset borde det räcka med 2 fält, VehicleID och ObjectData. Du får ha fler men det känns onödigt tycker jag.
    • Du ska till din klass garage skriva mist dessa metoder:
      1. parkVehicle($vehicle) – skall lägga till ett fordon till garaget (spara ett objekt till databasen).
      2. checkoutVehicle($registration) – skall plocka bort och returnera fordonet med registrerings_id $registration
      3. countVehicle() - skall returnera antal fordon i garaget.
      4. totalWeight() - skall returnera den totala vikten av alla fordon i garaget.
      5. fastestVehicle() - skall returnera det snabbaste av alla fordon i garaget.
      6. info() - skall presentera information om alla fordon som finns i garaget.
    • Tips på tillvägagångssätt:
      1. Fundera ut hur din databas skall se ut, när du är klar visa mig.
      2. Testa så att du kan spara en instans av dina klass i databasen och sedan hämta upp den från databasen och återställa objektet. (serialize och unserialize).
      3. Börja med din klass garage och testa så att varje steg du gör fungerar.