Fragen von einem "Dummy" - Seite 128

 
mql5:
Wir werden es nicht vergessen ;)
Ersetzen Sie die Operatorüberladung besser durch Mehrfachvererbung. Das wäre viel nützlicher.
 
TheXpert:
Anstatt Operatoren zu überladen, sollten Sie lieber Mehrfachvererbung einsetzen. Das wäre viel nützlicher.
Leider ist dies nicht geplant. Im Moment wird nur die Möglichkeit der Vererbung von Klassen von Strukturen in Betracht gezogen.
 
TheXpert:
Sie sollten besser Mehrfachvererbung statt Operatorüberladung implementieren. Das wäre viel nützlicher.

Gut geschrieben - machen Sie es möglich :) Das ist genau das, was die Mehrfachvererbung bewirkt.

Vor einer Woche nahm ich an einer Diskussion "Mehrfachvererbung vs. Aggregation" teil und die Aggregation gewann einen überzeugenden Sieg.

 
Vladix:

Ich habe vor einer Woche an der Diskussion "Mehrfachvererbung vs. Aggregation" teilgenommen, und die Aggregation hat einen überzeugenden Sieg errungen

Nun ja, einen Kilometer Wrapper-Code für jede Implementierungsklasse zu schreiben ist viel besser und effizienter. Und auch viel schneller.

Vor allem, wenn es sich um etwa ein Dutzend Schnittstellen handelt.

Aber geben Sie mir den Link, ich werde ihn in Ruhe studieren.

 
mql5:
Leider ist dies nicht geplant. Zur Zeit wird nur die Möglichkeit in Betracht gezogen, Klassen von Strukturen zu erben.

Und Zeiger auf Strukturen wären sehr nützlich, und Sie müssen sie (Strukturen) nicht dynamisch machen - die Hauptsache ist, dass Sie das Index-Array anstelle der Strukturen selbst sortieren können.

// In vielen Fällen ist es unerwünscht, Strukturen durch Klassen zu ersetzen. Sie sind kostengünstig (keine virtuelle Methodentabelle) und enthalten "solide" Daten.

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
TheXpert:

Ja, es ist viel besser und effizienter, für jede Implementierungsklasse einen Kilometer an Wrapper-Code zu schreiben.

Aber geben Sie mir den Link, ich werde ihn in Ruhe studieren.

Was den Wrapper betrifft, so stimme ich zu, aber meistens fungiert er auch als Frontend oder Adapter, d.h. er ändert die Schnittstelle der aggregierten Klasse.

Ich kann Ihnen den Link nicht geben, es war eine interne Skype-Diskussion mit etwa dreißig interessierten Personen.

 
Vladix:

Was den Wrapper betrifft, so stimme ich zu, aber meistens fungiert er auch als Frontend oder Adapter, d.h. er ändert die Schnittstelle der zu aggregierenden Klasse.

Es kommt darauf an, wie man es betrachtet. Man könnte sagen, dass die Aggregation in diesem Fall eine Krücke ist, weil Mehrfachvererbung aus logischer und kodierungstechnischer Sicht viel transparenter und bequemer ist.

Darf ich Ihnen ein Beispiel dafür geben, wie Ihr Unternehmen Rautenhierarchien handhabt?

 
TheXpert:

Es kommt darauf an, wie man es betrachtet. Man könnte sagen, dass die Aggregation in diesem Fall eine Krücke ist, denn Mehrfachvererbung ist sowohl logisch als auch kodierungstechnisch viel transparenter und bequemer.

Können Sie ein Beispiel dafür geben, wie Ihr Unternehmen mit Rautenhierarchien umgeht?

Hierarchien sind, wenn ich mich nicht irre, nur ein Produkt der Mehrfachvererbung.

Können Sie ein Beispiel aus der Praxis nennen, bei dem Sie auf die Notwendigkeit gestoßen sind, Rautenhierarchien aufzubauen und zu implementieren?

 
Vladix:

Rhomboidische Hierarchien sind, wenn ich mich nicht irre, nur ein Produkt der Mehrfachvererbung.

Können Sie ein Beispiel aus Ihrem Leben nennen, bei dem Sie auf die Notwendigkeit gestoßen sind, rhomboide Hierarchien aufzubauen und umzusetzen?

Ein Mensch hat einen Arm, ein Bein und alle möglichen Organe, sie sind aus Zellen aufgebaut, die aus Atomen bestehen, die Menge der Atome ist endlich, aber ihre Menge ist riesig.

Alle Organe haben unterschiedliche Aufgaben, aber alle zusammen sind sie Menschen. Die Menschen sind unterschiedlich und können verschiedene Berufe usw. haben.

Diejenigen, bei denen wir mit einem Satz begonnen haben, von dem eine Zelle vererbt wird, sind zu einer Klasse konvergiert, haben sich dann wieder in Organe aufgeteilt und sind wieder zu einer Klasse von Menschen konvergiert, die sich wiederum in Berufe aufteilt.

 
Vladix:

Hierarchien sind, wenn ich mich nicht irre, nur ein Produkt der Mehrfachvererbung.

Nein, es ist ein Produkt des Designs. Sie hängt nicht von der Verwendung von Sprachwerkzeugen ab.

Können Sie Beispiele aus der Praxis nennen, bei denen Sie Rautenhierarchien aufbauen und umsetzen mussten?

Am Anfang nicht, aber ich habe es mehr als einmal benutzt. Und das praktisch ohne jede Wahl.

Wenn Sie mich fragen, ist das Schreiben von Krückenumschlägen an sich schon ein gewichtiges Argument.