Kmom02: Arv och andra klassrelationer

By . Latest revision .

Kom igång med arv och andra klassrelationer. Vi ska titta närmare på klassrelationer och hur de kan implementeras. Vi tar även ett steg till med Flaskapplikationen och ser hur vi hanterar fomulär med GET och POST.

Vi ska skapa en basklass och subklasser som får sin data från ett formulär och sedan ritas ut i Flaskapplikationen.

(Detta är instruktionen för kursmomentet och omfattar det som skall göras inom ramen för kursmomentet. Momentet omfattar cirka 20 studietimmar inklusive läsning, arbete med övningar och uppgifter, felsökning, problemlösning, redovisning och eftertanke. Läs igenom hela kursmomentet innan du börjar jobba. Om möjligt – planera och prioritera var du vill lägga tiden.)

#Läsanvisningar

(ca: 8-10 studietimmar)

#Kurslitteratur

Läs följande:

  1. Python 3 Object-oriented Programming
    • Ch 1 - Object-oriented Design
      • Hiding details and creating the public interface — Summary
    • Ch 2 - Objects in Python
      • Who can access my data?
      • Case study - Summary
    • Ch 3 - When Objects Are Alike
    • Ch 4 - Expecting the Unexpected

#Artiklar

  1. Klass relationer

  2. Aggregation

  3. Arv

#Video

Titta på följande:

  1. Videoserien Lär dig objektorienterad Python är tätt kopplat till kursmaterialet. Kika igenom videorna som börjar med 2.

  2. Titta på resten av Object-oriented programming (7.45 och fram).

#Lästips

  1. Objektorienterad programmering och klass relationer

#Övningar & Uppgifter

(ca: 8-10 studietimmar)

#Övningar

Genomför följande övning för att träna dig.

  1. Läs igenom artikeln som handlar om “GET, POST i Flask”.

  2. Läs igenom artikeln om “Klass relationer” i Python.

#Uppgifter

Dessa uppgifter skall utföras och redovisas.

  1. Gör uppgiften “Python med klass relationer” (lab 2)

  2. Gör uppgiften “Skapa former”. Spara koden i mappen me/flask/.

  3. Fyll på redovisning.html med kursmomentets redovisningstext.

# Ställ dig i kurskatalogen
# dbwebb validate flask
dbwebb publish flask

#Extra

Det finns inga extrauppgifter.

#Resultat & Redovisning

(ca: 1-2 studietimmar)

Läs instruktionen om hur du skall redovisa.

Se till att följande frågor besvaras i redovisningstexten.

  • Kan du ge exempel på något användningsområde där objektorientering och arv hade passat bra?
  • Förstod du de olika relationerna och skillnaden på dem?
  • Är du bekant med metoderna GET och POST sedan tidigare?
  • Hur tyckte du det gick med formulärhantering i Flask?
  • Gick det bra att komma i gång med kursmomentet, var det lagom, för litet, för stort?
  • Gjorde du extrauppgiften i “Skapa former”?
  • Vilken del av kursmaterialet (böcker, artiklar, videor, etc) uppskattade du mest?

#Revision history

  • 2017-11-24: (A, lew) oopython v2.
  • 2017-11-10: (PE1, mos) Utkast till v2.

Document source.