Dies ist eine spezifischere Frage (oder tatsächlich zwei, aber sie sind verwandt), die aus den Kommentaren zum Tod der OOP-Technologie stammt, in denen jemand erklärte, dass OOP nicht das richtige Paradigma für die GUI-Programmierung ist.
Wenn ich die Kommentare dort und hier lese, habe ich immer noch das Gefühl, dass es etwas zu lernen gibt: Welche Programmierparadigmen gelten als gut passend und warum sind sie besser als andere (vielleicht mit Beispielen zur Veranschaulichung?)
Ich habe das tk-Beispiel aus dem Titel und der Frage entfernt
Antworten:
Ich bin normalerweise kein Befürworter von OOP, aber ich würde sagen, dass die GUI-Programmierung einige der besten Möglichkeiten bietet, die Stärken von OOP zu nutzen. Die Implementierung verschiedener Widgets wird durch die Verwendung des Polymorphismus und der Vererbung von OOP erheblich vereinfacht. Die GUI-Bibliothek von PLT Racket ist ein gutes Beispiel.
quelle
Eine typische GUI aus Widgets und deren Layout ist vollständig deklarativ. Widgets an sich würden nicht miteinander interagieren, daher ist eine Vorstellung von Objekten und Nachrichten hier etwas fremd. Hierarchische deklarative DSLs sind derzeit eine Art Mainstream, wobei Tk eines der ersten Beispiele ist und WPF ein moderner Ansatz für dasselbe. Funktionale reaktive Programmierung ist ein weiterer interessanter (aber nicht sehr verbreiteter) Ansatz.
Einige Leute neigen dazu, OOP überall dort zu sehen, wo eine Hierarchie definiert ist, was falsch ist - es gibt absolut keinen Zusammenhang zwischen strengen Hierarchien (lesen - algebraische Datentypen) und Kays Definition von OOP.
quelle