Diskussion zum Artikel "MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 1" - Seite 2

 
Алексей Мокрушин:
...
Keiner hat "geschissen". Ich persönlich habe die begründete Meinung geäußert, dass der Autor keine klaren Prinzipien der Struktur der Auszeichnungssprache dargelegt hat, weil er sie nicht kennt. Der Artikel enthält einerseits viele allgemeine Worte und andererseits unnötige Details (wie ein Suchspiel). Der Autor hat das Konzept der Auszeichnungssprache noch nicht verstanden und glaubt, dass eine gewöhnliche Bibliothek in eine solche umgewandelt werden kann. Wir warten auf den Moment, in dem er den Implementierungsplan beschreiben wird.

Ich persönlich habe das Recht, Kritik zu üben, denn ich habe die Auszeichnungssprache entwickelt und kann gut erkennen, wann "Wasser fließt" und wann die Dinge erledigt sind. Es gibt kein Konzept in diesem Artikel, aber es gibt einen Versuch, eines zu formulieren. Wir werden sehen, was als nächstes kommt...

Die beste Beschreibung des Artikels - der Autor hat den Bewusstseinsstrom "eingeschaltet" und versucht zu begründen, wie wir versuchen könnten, die Umsetzung anzugehen. Eigentlich schreibt er es selbst in dem Artikel (Prüfung der Realisierbarkeit des "POC"-Konzepts).
 
Ich würde sagen, dass eine Markup-Sprache (unabhängig von der Technologie, in der sie erstellt wird) ein Satz von Befehlen, C-Wörtern, Regeln und Syntax für grafische Funktionen ist, die der Steuerung dienen. Das heißt, theoretisch kann eine grafische Bibliothek in eine Sprache mit vereinfachter Syntax und einfacher Konstruktion von grafischen Konstruktionen verpackt werden, was den Prozess der GUI-Beschreibung für den Benutzer beschleunigt und seine Bemühungen spart, aber vergessen Sie nicht, was es braucht:
1. Erfinden Sie eine Sprache mit Regeln und Syntax.
2. Einen Interpreter schreiben, der den Code der "Sprache" in MQL-Code übersetzt, d.h. einen Wrapper (Markup schreiben) in Bibliotheksaufrufe der entsprechenden Funktionalität.

Dahinter verbirgt sich die Schaffung eines speziellen Motors, dessen Funktionsweise im Voraus gut verstanden werden sollte.

 
Алексей Мокрушин:
...da mql keine Delegierten hat, musste ich herausfinden, was dieses Gericht ist und womit es gegessen wird. Ich musste alle Standardklassen neu schreiben. Ich begann von Anfang an, mit CObject. Am Ende schrieb ich eine einfache Implementierung von OnTradeTransaction, OnChartEvent, OnTimer events processing mit Hilfe von "real" OOP....

.

 
Dmitry Fedoseev:

.

Hand aufs Herz - CObject und"Standard Library" sind noch ein Erbe der 90er Jahre :-))

bis es eine ähnliche STL geben wird, die keine zusätzlichen Attribute von Instanzen und/oder das Vorhandensein von "adam" (grand class/common ancestor) erfordert, wird es erhebliche Probleme geben - der sichtbare Teil davon ist die Menge an Anwendungsprogrammcode. Sie sind verdammt groß....

 
Maxim Kuznetsov:

Hand aufs Herz - CObject und"Standard Library" sind ein Erbe der 90er Jahre :-)

bis es eine ähnliche STL geben wird, die keine zusätzlichen Attribute von Instanzen und/oder das Vorhandensein von "adam" (grand class/common ancestor) erfordert, wird es erhebliche Probleme geben - der sichtbare Teil davon ist die Menge an Anwendungsprogrammcode. Sie sind verdammt groß....

CObject ist hier nicht der Punkt. OOP != Patterns, verwechseln Sie nicht, wo die Macht der Patterns genutzt wird und wo die Macht von OOP genutzt wird. Es gibt keine besondere Notwendigkeit für OOP, und noch weniger für Templates, wenn man Expresso schreibt, und schon gar nicht, um ein Analogon eines Delegaten mit OOP zu erstellen, während es Zeiger auf Funktionen gibt.

So traurig es auch sein mag, der Witz über den "C++-Opferclub" wird zur Realität. Es ist seltsam, dass die Leute sich selbst mit allen möglichen Spielereien überhäufen und es für cooles Coding halten. Aber in Wirklichkeit ist der moderne Programmierer zu einem Bibliotheksstopfer verkommen.
 
Dmitry Fedoseev:

CObject ist hier nicht die Hauptsache. OOP != Templates, verwechseln Sie nicht , wo die Macht der Templates genutzt wird und wo die Macht von OOP genutzt wird. Es gibt keinen besonderen Bedarf für OOP, geschweige denn für Templates, in Expresso-Writing, geschweige denn für die Erstellung eines analogen Delegaten mit OOP, während es Zeiger auf Funktionen gibt.

So traurig es auch ist, der Witz über den "C++-Opferclub" wird zur Realität. Es ist seltsam, dass die Leute sich selbst mit allen möglichen Spielereien überhäufen und es für cooles Coding halten. Aber in Wirklichkeit ist der moderne Programmierer zu einem Library Plugger verkommen.

"What's the power, brother?"

Library-Plugger sollten regieren. Es ist sogar richtig, wenn es die Codegröße und die Entwicklungszeit reduziert.

PS/ Bisher sind alle veröffentlichten Artikel (und ihre Entwicklungen, was noch wichtiger ist) die Antithese der Programmierung - sie steigern nicht die Effizienz.

 
Maxim Kuznetsov:

"Was ist die Macht, Bruder?"

library_plugins sollten die Regel sein. Es ist eigentlich das Richtige zu tun, wenn es die Codegröße und Entwicklungszeit reduziert.

PS/ Bisher sind alle veröffentlichten Artikel (und ihre Entwicklungen, was noch wichtiger ist) die Antithese der Programmierung - sie steigern nicht die Effizienz.

Die Macht liegt im Wissen, und Artikel vermitteln nur Wissen und nichts anderes sollten sie vermitteln. Die Steigerung der Effizienz ist für jeden eine persönliche Angelegenheit. Die Steigerung der Effizienz der Programmierung ist sicherlich gut, aber nicht, wenn sie den Benutzer des Programms weniger komfortabel macht.

 
Dmitry Fedoseev:

... In der Tat ist der moderne Programmierer zu einem "Library Plugger" degeneriert.

Bald wird er ganz verschwinden, da es möglich sein wird, "Objekte" (benannte Gruppen von Parametern mit vordefinierten Verknüpfungen) intuitiv und ohne höhere Bildung zu erstellen, mit Unterstützung einer "intellektuell entwickelten" IDE, die das Wesen der logischen Struktur, die aus "einem halben Wort" aufgebaut ist, "verstehen" wird. Die Umwelt wird aufwachen und die Ära der spezialisierten Programmierer und der Sprachenvielfalt wird zu Ende gehen. Jeder wird in der Lage sein, Algorithmen zu erstellen, indem er die Anweisungen für das Programm liest. Ein natürlicher Prozess, nichts worüber man sich Sorgen machen müsste..... Es ist seltsam, dass dies nicht schon früher begonnen hat, sondern dass sich stattdessen Sprachen, die ein Konzept auf unterschiedliche Weise wiederholen, immer weiter verbreitet haben.

 

Es wird kein XML geben. Das Ziel ist es, ohne MQL auszukommen. Das Ziel ist es, ein MVP-Level Markup-System "native" zu MQL zu machen - ohne Schnickschnack, aber funktional und erweiterbar genug für diejenigen, die es brauchen. Es wird möglich sein, nicht auf die interne Struktur einzugehen. Es ist einfach besser, eine Beschreibung des Konzepts und des Geräts zu haben, als keine zu haben.

Ich bin auch nicht verrückt nach der Standardbibliothek, aber es gibt nicht viel Auswahl, also ist sie (im Moment) der beste Kompromiss zwischen den wenigen sehr kleinen und super ausgefallenen Bibliotheken, die ohnehin große Fragen aufwerfen.

Die vermeintlichen Koryphäen der Programmierung und GUI-Erstellung, die sich mit naivem Handwerk als solche deklariert haben, sollten ihre Hattrickkünste in eigenen Threads demonstrieren.

 
Stanislav Korotky:

...

Eingebildete Koryphäen der Programmierung und GUI-Erstellung, die sich auf der Basis von naivem Handwerk als solche deklarieren, sollten in eigenen Threads ihre Hattrickkünste demonstrieren.

Bingo.