Announcement

Collapse
No announcement yet.

Was kann OOP was ich mit Komposition nicht erreichen kann

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Hallo,

    ich habs nur überflogen und sehe es so wie Christian. Persönlich finde ich, dass sich mittels OOP die Realität viel besser bzw. überhaupt erst modellieren lässt, als dies mittels imperativer Programmierung möglich ist. Aber dazu wurde schon genug im Thema gesagt.

    Der Herr Liskov hat hier auch einiges dazu beigetragen
    Liskov heißt mit Vornamen Barbara ist und weiblich ;-)

    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #17
      Originally posted by gfoidl View Post
      ...Liskov heißt mit Vornamen Barbara ist und weiblich ;-)...
      echt? krass wusste ich echt net...

      Das Problem an OOP ist eben, dass man nur einfach Vererbung hat. Im Prinzip lege ich den Kontext für eine Klasse ab der ersten Vererbung fest, ein Mann ist z.B. eine Person. Wenn jetzt diese Person auch noch Bahnfahrer, Tennisspieler und behindert ist, dann habe ich in der OOP irgendwie ein Problem. Klar kann ich noch weiter Unterklassen bilden, aber was mache ich dann mit der Frau die auch Bahnfahrer, aber kein Tennisspieler und lesbisch ist? Gerade solche Dinge sehe ich erst bei der Weiterentwicklung des Codes. Habe ich Composition kann ich das relativ einfach zusammenbauen. Habe ich aber Vererbung, dann geht das nicht so einfach. Das Konzept der Mixins finde ich daher wesentlich passender, aber eigentlich ist das ja auch nur Komposition.

      Von der Idee her ist OOP wirklich toll, aber ich habe irgendwie noch kein vernünftiges Praxisorientiertes Beispiel gesehen was man nicht auch mit Komposition hätte lösen können.

      Comment


      • #18
        Hallo,

        kein vernünftiges Praxisorientiertes Beispiel gesehen was man nicht auch mit Komposition hätte lösen können.
        Klar gehts immer anders auch. Mit Assembler lässt sich auch alles lösen ;-)
        Als Beispiel nimm die Stream-Klasse in .net her, die zeigt auch wunderbar wie OOP verwendet werden kann. Mit Komposition ist das alles viel aufwändiger und "Dinge" wie Kapselung lassen sich nicht so einfach umsetzen.

        mfG Gü
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment

        Working...
        X