Klassenproblem für Sportarchiv

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Klassenproblem für Sportarchiv

    Hi an Alle,

    ich möchte gerne ein kleines Sportarchiv aufbauen und habe hier ein kleines Verständnisproblem zu den Klassen und möglichen Vererbungen...

    Im Prinzip soll es um Einzelsportarten gehen, so dass ich immer eine Klasse Personen haben werden.

    Jetzt beginnt schon mein erstes Problem. Benötige ich für die Person die verschiedene Funktionen haben kann in dem Sport (Spieler, Trainer usw. hier gehe ich davon aus, dass die Funktion ein Attribut an der Person sind) eine Subklasse (z.B. Turnier) oder eine separate Klasse Turnier?

    Ein Spieler kann an einem Turnier spielen also könnte Turnier doch von der Person erben. Oder verstehe ich hier etwas falsch?

    Weiter kommt dann Spiele eines Turnieres. Subklasse von Turnier??? Aber ein Spieler ist ja Teilnehmer dieser Spiele???

    Vielleicht kann mir jemand einen kurzen Denkanstoss geben stehe nämlich total auf dem Schlauch....

    Werde bestimmt noch mehr Fragen haben dann anschließend ;-))

    Danke Euch vorab...

  • #2
    Nein, das ist Quatsch. In der Klassenabstraktion stellen Vater- und Kindklassen Ist-ein-Beziehungen dar. Und ein Turnier ist keine Person. Mal ein Beispiel dazu:
    PHP-Code:
    abstract class Human
    {
    }

    // Gute Idee:
    class Man extends Human
    {
    }

    class 
    Woman extends Human
    {
    }

    // Schlechte Idee:
    class Man extends Toaster
    {

    Noch etwas Lektüre dazu gibts unter anderem hier.


    Grüße
    Zuletzt geändert von Griecherus; 23.07.2008, 21:52.
    Nieder mit der Camel Case-Konvention

    Kommentar


    • #3
      okay verstanden wie verhält es sich aber dann bei:


      Turnier-Spiele-Einzelspiel???

      Kommentar


      • #4
        Original geschrieben von Egistar
        Turnier-Spiele-Einzelspiel???
        Was glaubst du denn? Eigeninitiative ^^..

        Kommentar


        • #5
          wenn ich eine Idee hätte würde ich nicht fragen...

          Ich hätte es wohl so gemacht wie bei Human auch...

          class tournament
          {
          .
          }

          class games extends tournament
          {
          .
          }

          class singlegame extends tournament
          {
          .
          }

          nur was könnten Games und Singlegame erben??

          Kommentar


          • #6
            Wieso versteifst du dich gerade so auf die Klassenvererbung, wenn du noch keinen konkreten Plan davon hast? Für mich siehts so aus, als wolltest du um jeden Preis alles vererben, was nicht bei drei auf den Bäumen ist. Du solltest erstmal dein Konzept durchdenken: Welchen Klassen liegen welche Aufgaben zugrunde?
            Was ist Games?
            Was ist Singlegame?
            Worin unterscheiden sie sich?
            Hast du das ausgearbeitet, sollte dir einiges schon klarer sein, was die Relationen angeht. Für mich sieht es nämlich eher so aus, als wäre
            PHP-Code:
            class SingleGame extends Games 
            sinnvoller, oder? Allerdings lässt sich das nur mutmaßen, da von deinem Konzept bisher nur die Klassennamen bekannt sind.
            Nieder mit der Camel Case-Konvention

            Kommentar

            Lädt...
            X