Mein Ansatz. Der Kern ist der Motor. - Seite 14

 
Aliaksandr Hryshyn:

Das Format ist einfach, aber es funktioniert nicht damit. Ich meine, wenn es viele Eigenschaften in Objekten gibt.

Hier ist ein Beispiel für Ihren Ansatz, der tatsächlich angewandt wird, die Prinzipien sind die gleichen. Das lexikalische Parsen von Text ist manuell nur sehr schwer zu bewerkstelligen. Nur Automatisierung. Und sagen Sie nicht, es sei bequem.

Die angezeigte Reihe von Prototypen ist das Ergebnis der manuellen Initialisierung von Objekteigenschaften mit Standardwerten. Sie ist nur für den Entwickler sichtbar.

Main Kernel - wird automatisch aus Elementprototypen kompiliert. Anschließend werden die Prototypen in konkrete Elemente umgewandelt. Auch automatisch.


Für die Arbeit mit dem Konstruktor gibt es einfache Schlüsselwörter und eine bequeme Form des Zeichnens. Dort gibt es keine solchen Tabellen.

 
Реter Konow:

Hier ist ein weiteres Beispiel, das zu Ihrer Idee passt, nur mit vielen dynamischen Elementen. Es gibt ganze Strategien, in diesem Beispiel sind es drei. Hier gibt es nicht viele Annehmlichkeiten. In der beigefügten Datei.

Dateien:
 
Vasiliy Sokolov:

Das heißt, um die Dimensionalität des Arrays beizubehalten, haben einige Ihrer Objekte gefälschte Eigenschaften. Es ist sehr flexibel, man kann nichts dagegen sagen.

Leider müssen wir diese Unannehmlichkeiten vorübergehend in Kauf nehmen. Andererseits bietet ein zweidimensionaler Kernel einen äußerst bequemen und schnellen Zugriff, die Einbindung von Schleifen und vieles mehr. Wenn Sie einen eindimensionalen Kernel erstellen, gibt es keine "unechten" Eigenschaften. Aber der Komfort wird um ein Vielfaches geringer werden. Oder Sie könnten die Text- und Symboleigenschaften einfach in eine Reihe von Kerneigenschaften einfügen. Und das Problem wird beseitigt sein. Ich werde dies in Zukunft tun.

 
Aliaksandr Hryshyn:

Hier ist ein weiteres Beispiel, das zu Ihrer Idee passt, nur mit vielen dynamischen Elementen. Es gibt ganze Strategien, in diesem Beispiel sind es drei. Hier gibt es nicht viele Annehmlichkeiten. In der beigefügten Datei.

Ich habe die Leser anfangs gewarnt, dass mein Ansatz nicht auf die Bequemlichkeit eines Programmierers ausgerichtet ist. Ich biete die Konzeption der leistungsstärksten und schnellsten Entwicklung eines Programms an.

Natürlich werden sie sagen, dass die schnellste Entwicklung eines Programms darin besteht, vorgefertigte Blöcke einzubauen. Ja, aber die Qualität der Programme sinkt und der Aufwand steigt. Das Zusammenfügen von Blöcken ist im Hinblick auf die Effizienz nicht die beste Lösung.

 
Реter Konow:

Ich habe die Leser anfangs gewarnt, dass mein Ansatz nicht auf Programmiererfreundlichkeit ausgerichtet ist. Es bietet das Konzept der leistungsfähigsten und schnellsten Entwicklung eines Programms.

Es ist praktisch, wenn der Programmierer solche Daten nicht direkt ändert/erzeugt.

Die Verwendung von Code, der mit solchen Daten arbeitet, ist recht praktisch.

 
Реter Konow:

Ich habe die Leser anfangs gewarnt, dass mein Ansatz nicht auf Programmiererfreundlichkeit ausgerichtet ist. Es bietet das Konzept der leistungsfähigsten und schnellsten Programmentwicklung.

Wie können diese beiden Bestimmungen nebeneinander bestehen: mangelnder Komfort für den Programmierer und schnelle Programmentwicklung? Wie kann man ein Programm schnell entwickeln, wenn es nicht bequem ist?

 
Реter Konow:

Was ist das Problem mit der Kontrolle? Fügen Sie eine Eigenschaft hinzu, und erhöhen Sie die Größe der Kernel-Zeilen. Das ist alles.

Und was werden Sie tun, wenn Sie keine rechteckige, sondern eine runde oder dreieckige Taste anfertigen müssen?

Wenn Sie OOP verwenden, erstellen Sie eine Basisklasse Button, die eine abstrakte Methode Draf hat - diese Methode ist für das Zeichnen von Schaltflächen zuständig. Für eine runde Schaltfläche müssen Sie ein Erbe von Button erstellen, das ausreicht, um die Methode Draf zu überschreiben, die das Zeichnen der runden Schaltfläche implementiert. Für eine rechteckige Schaltfläche reicht es auch aus, ein Erbe von Button zu erstellen und die Methode Draf zu überschreiben, um eine rechteckige Schaltfläche zu zeichnen.

Wie würde das alles aussehen, wenn Sie Ihre Methode anwenden?

 
Aliaksandr Hryshyn:

Hier ist ein weiteres Beispiel, das zu Ihrer Idee passt, nur mit vielen dynamischen Elementen. Es gibt ganze Strategien, in diesem Beispiel sind es drei. Hier gibt es nicht viele Annehmlichkeiten. In der beigefügten Datei.

Niemals!

Es ist eine schöne Sache... ein stapelbarer Automat.

mit minimalen Assembler- und Forth-Kenntnissen ist es ein Kinderspiel zu lesen. Wenn es Kommentare gäbe, wäre es nicht komplizierter als MQL.

 
Aliaksandr Hryshyn:

Dies ist praktisch, wenn der Programmierer solche Daten nicht direkt ändert/erstellt.

Die Verwendung von Code, der mit solchen Daten arbeitet, ist recht praktisch.

Sie werden sehen, dass ein Array von Prototypen einmal erstellt wird. Und dann wird sie SEHR selten geändert. Nur bei gravierenden Änderungen des Programms.

 
Maxim Kuznetsov:

Niemals!

Es ist eine wunderbare Sache... eine klare Stapelmaschine.

Wenn Sie Assembler und Forth so wenig wie möglich kennen, ist es im Handumdrehen gelesen. Wenn es Kommentare gäbe, wäre es nicht komplizierter als MQL.

Das ist ein cooles Ding.) Sie stimmen zu, dass es einfacher ist, Programme in MQL als in Assembler zu schreiben. Ich spreche von Benutzerfreundlichkeit und Effizienz.