i

Datenstruktur

Wahl einer geeigneten Datenstruktur

Um ein einzelnes Spiel zu repräsentieren, benötigen wir eine Datenstruktur, die die Informationen über das Spiel speichert. Dazu könnten wir Records, Tupel oder eine Kombination aus beidem verwenden.

Hier findest du einige Vorschläge zur Modellierung eines Spiels.

-- Variante 1
type alias Spiel =
    { heimmannschaft : String
    , gastmannschaft : String
    , heimtore : Int
    , gasttore : Int
    }

-- Variante 2
type alias Spiel =
    ( String, String, Int, Int )

-- Variante 3
type alias Spiel =
    { mannschaften : ( String, String)
    , tore : ( Int, Int )
    }

-- Variante 4
type alias Spiel =
    { heimmannschaft : ( String, Int )
    , gastmannschaft : ( String, Int )
    }

-- Variante 5
type alias Spiel =
    ( ( String, Int ), ( String, Int ) )

-- Variante 6
type alias Spiel =
    ( ( String, String ), ( Int, Int ) )

Aufgabe 1

Bewerte die verschiedenen Varianten hinsichtlich ihrer Eignung zur Modellierung eines Spiels. Entscheide dich für eine Variante und erkläre, warum du diese gewählt hast.

Liste von Spielen

Um einen ganzen Spieltag darzustellen, benötigen wir eine Liste von Spielen. Man kann auch für den Spieltag einen Typ-Alias definieren. Da dies das gesamte Datenmodell unserer Anwendung beinhält, nennen wir es Model. Der Name für den Typ-Alias ist frei wählbar. Model ist jedoch eine gängige Konvention, um das Datenmodell der gesamten Anwendung zu definieren.

-- Variante 1
type alias Model =
    List Spiel

-- Variante 2
type alias Model =
    { spiele : List Spiel
    }

Aufgabe 2

Begründe warum die du (k)einen der beiden Vorschläge für einen Typ-Alias für die Liste von Spielen verwenden möchtest.

Suche

v
8.2.3.4.1.2
dev.inf-schule.de/deklarativ/fp_elm/dynamischewebseiten/sportergebnisse/lernstrecke/datenstruktur
dev.inf-schule.de/8.2.3.4.1.2
dev.inf-schule.de/@/page/eYAmGJOtniLavMGI

Rückmeldung geben