Whouzuo: Stein-Schere-Papier-Echse-Spock in OOP

Beitrag lesen

Om nah hoo pez nyeetz, Whouzuo!

Ich wäre auch dagegen dieses Kartenbeispiel zu nehmen, denn es eignet sich nicht für das einfach Zeigen der Vorteile von OOP. Im Gegenteil, es demonstriert die Schwächen von OOP

Das ist ja auch schon mal was ;-)
Leider finde ich die Demonstration der Schwächen nicht so überzeugend, kannst du da etwas weiter ausholen?

Du wirst mir in PHP (ohne Nutzung einer Library, die multiple dispatch emuliert) keine Implementierung zeigen können, bei der du jeweils nur an einer Stelle im Code Änderungen vornehmen musst, um folgende Liste an fachlichen Änderungen durchzuführen:

1. Spiel um eine Karte erweitern (oder um eine Karte löschen)
2. Das Verhalten beim Vergleich von zwei Karten ändern
3. Eine Karte in einem anderen Zusammenhang verwenden (z.B. als Restaurantkarte) ohne ihre bisherigen Eigenschaften zu verändern oder zu löschen (lediglich ggf. zu ergänzen) (= keine Verletzung von Seperation of concerns)

Hättest du zudem ein Beispiel, das sich besser eignet?

Vielleicht eignen sich einfache Textspiele ganz gut, um soetwas zu zeigen. Z.B. mit Klassen wie Soldat, Panzer usw. da hat man dann auch wirkliche greifbare Vererbung. Aber du bist der Lehrer, du wirst es am besten wissen. Ich denke ich würde allerdings trotzdem mit funktionaler Programmierung anfangen; das ist viel besser greifbar und ohne soviel Overhead und blimblim drum herum. Denn was eine mathematische Funktion ist, das wissen die meisten wahrscheinlich schon.

0 55

Stein-Schere-Papier-Echse-Spock in OOP

Matthias Apsel
  • programmiertechnik
  1. 0
    Whouzuo
    1. 0
      T-Rex
      1. 0
        Whouzuo
  2. 0
    T-Rex
    1. 0

      Stein-Schere-Papier-Echse-Spock

      Auge
      • menschelei
  3. 0
    M.
  4. 0
    Encoder
    1. 0
      Matthias Apsel
      1. 0
        Encoder
        1. 0
          Matthias Apsel
          1. 0
            Whouzuo
            1. 0
              Matthias Apsel
              1. 0
                Whouzuo
        2. 0
          Matthias Apsel
  5. 0
    T-Rex
    1. 0
      Whouzuo
      1. 0
        Encoder
        1. 0
          Whouzuo
          1. 0
            Encoder
            1. 0
              Whouzuo
              1. 0
                Encoder
                1. 0
                  Matthias Apsel
                2. 0
                  Whouzuo
                  1. 0
                    Matthias Apsel
                    1. 0
                      Whouzuo
                    2. 0
                      Whouzuo
                      1. 0
                        Matthias Apsel
      2. 0
        Matthias Apsel
        1. 0
          Whouzuo
          1. 0
            Matthias Apsel
            1. 0
              Whouzuo
              1. 0
                Matthias Apsel
                1. 0
                  Whouzuo
                  1. 0
                    Matthias Apsel
              2. 0
                dedlfix
                1. 0
                  dedlfix
                2. 0
                  Whouzuo
      3. 0
        T-Rex
    2. 0
      T-Rex
      1. 0
        Matthias Apsel
  6. 3
    Der-Dennis
    1. 3
      Der-Dennis
      1. 0
        Whouzuo
        1. 0
          Der-Dennis
          1. 0
            Whouzuo
            1. 0
              Der-Dennis
          2. 0

            Stein-Schere-Papier-Echse-Spock in OOP (Teil 2)

            Whouzuo
            1. 0
              Der-Dennis
              • menschelei
    2. 0
      Matthias Apsel
      1. 0
        Der-Dennis
        1. 0
          bubble
          1. 0
            Der-Dennis
        2. 0
          Matthias Apsel
        3. 0
          Matthias Apsel