Diskussion zum Artikel "MQL5 beherrschen, vom Anfänger zum Profi (Teil II): Grundlegende Datentypen und die Verwendung von Variablen"

 

Neuer Artikel MQL5 beherrschen, vom Anfänger zum Profi (Teil II): Grundlegende Datentypen und die Verwendung von Variablen :

Dies ist eine Fortsetzung der Serie für Anfänger. In diesem Artikel werden wir uns ansehen, wie man Konstanten und Variablen erstellt, Daten, Farben und andere nützliche Daten schreibt. Wir werden lernen, wie man Enumerationen (Aufzählungen) wie Wochentage oder Linienstile (durchgezogen, gepunktet usw.) erstellt. Variablen und Ausdrücke sind die Grundlage der Programmierung. Sie sind definitiv in 99 % der Programme vorhanden, daher ist es wichtig, sie zu verstehen. Wenn Sie also neu in der Programmierung sind, kann dieser Artikel sehr nützlich für Sie sein. Erforderliche Programmierkenntnisse: sehr einfach, innerhalb der Grenzen meines vorherigen Artikels (siehe den Link am Anfang).

Heute werden wir darüber sprechen, wie Daten im RAM gespeichert werden. Die Daten können als Variablen oder Konstanten im Speicher abgelegt werden.

Die Unterschiede sind offensichtlich: 

  • Variablen können variieren, d.h. das Programm hat das Recht, solche Daten umzuschreiben
  • Konstanten bleiben konstant (unverändert) während der gesamten Programmlaufzeit, und wenn der Programmierer versucht, ihre Werte zu überschreiben, wird ein Kompilierungsfehler zurückgegeben.

Ansonsten ist ihre Bedeutung absolut ähnlich: Es handelt sich um einen bestimmten Bereich des Arbeitsspeichers, in dem Daten und keine Prozessorbefehle gespeichert werden. Normalerweise geben die Menschen diesen Speicherbereichen aussagekräftige Namen, um zu verstehen, wofür sie verwendet werden. 

Der Compiler entfernt diese Namen, aber wenn Sie Zugriff auf den Quellcode (die Textdatei) haben, können Sie den Zweck der Variablen immer anhand ihres Namens erkennen. Vorausgesetzt natürlich, dass sie richtig beschrieben sind.

Konstanten können in manchen Fällen keine Namen haben. Der Programmierer schreibt einfach, was genau verarbeitet werden soll (z. B. die Zeichenketten, die wir an die Druckfunktion übergeben haben). Solche namenlosen Konstanten werden als Literale bezeichnet. 

In diesem Artikel werden wir uns die grundlegenden Datentypen, die Möglichkeiten zur Beschreibung von Variablen und Konstanten sowie die grundlegenden Anweisungen, die ein Programmierer zur Erstellung von Algorithmen verwenden kann, genauer ansehen. Dies wiederum ermöglicht es Ihnen, mehr nützliche Programme als nur „Hello, World“ zu erstellen

Autor: Oleh Fedorov

 
Danke für den Versuch... Für mich persönlich ist dies eine weitere Serie von völlig nutzlosen Artikeln, egal wie sehr ich lernen möchte....
 
Константин Сандалиди #:
Danke für den Versuch... Für mich persönlich ist es nur eine weitere Serie von völlig nutzlosen Artikeln, egal wie sehr ich lernen möchte....

Da bin ich anderer Meinung. Es ist ein normaler Artikel, in dem alles detailliert beschrieben ist.

Mit freundlichen Grüßen, Vladimir.

 
Константин Сандалиди #:
Danke für den Versuch... Für mich persönlich ist es eine weitere Serie von absolut nutzlosen Artikeln, egal wie viel ich lernen möchte...
Konstantin, können Sie das erläutern? Warum "nutzlos"? Und was braucht man, damit es andersherum ist? Ich sage es Ihnen gleich: Ich möchte die Ausgabegeschwindigkeit deutlich erhöhen. Gibt es sonst noch etwas?
 

Ich unterstütze den Autor, ein guter Artikel. Ich habe ihn mit Interesse gelesen, um meine Erinnerung an das aufzufrischen, was ich bereits weiß.

Ich habe auch schon Leute getroffen, die enttäuscht waren, als sie feststellten, dass sie viel mehr Mühe und Zeit in das Lernen investieren müssen, um Programmierkenntnisse zu erlangen, als sie sich ursprünglich vorgestellt hatten. Hier hängt der Erfolg sehr stark von der einzelnen Person ab, aber wenn man nicht aufgibt und weiterhin andere Lernmaterialien sucht und studiert, ist alles möglich.

 
Oleh Fedorov #:
Konstantin, können Sie das näher erläutern? Warum "nutzlos"? Und was braucht man, um es andersherum zu machen? Ich sage es Ihnen gleich: Ich möchte die Ausgabegeschwindigkeit deutlich erhöhen. Gibt es sonst noch etwas?

Denn ich konnte MQL 4 nicht alleine meistern, und ich kann auch MQL 5 nicht alleine meistern . Und egal, was ich lese oder sehe, ich verstehe es nicht! Das Niveau meiner Ausbildung ist 0!!! Und alle Artikel sind für fortgeschrittene Benutzer, die einfach in die Dokumentation schauen können.... Das Unverständliche mehrmals zu lesen ist eine Sackgasse des Lernens (der Erkenntnis), "Lehrbuch" von S. Kovalev habe ich auswendig gelernt, wie ein Gedicht erzählen könnte, aber ich verstehe nicht, was es sagt (schreibt).... Umso mehr kann ich das Unverständliche nicht in meinem Kopf behalten und in der Praxis anwenden. Vielleicht gibt es ja einzigartige Menschen, die alles im Handumdrehen begreifen, aber ich nicht. Nur grundlegendes Wissen kann ich mir merken und anwenden. Ich möchte immer noch studieren, aber ich finde keinen Lehrer.

 
Константин Сандалиди #:

Denn ich konnte MQL 4 nicht alleine meistern, und ich kann MQL 5 nicht alleine meistern . Und was immer ich lese oder sehe, verstehe ich nicht! Das Niveau meiner Ausbildung ist 0!!! Und alle Artikel sind für fortgeschrittene Benutzer, die einfach in die Dokumentation schauen können.... Unverständliches mehrmals zu lesen ist eine Sackgasse des Lernens (der Erkenntnis), "Lehrbuch" von S. Kovalev habe ich auswendig gelernt, wie ein Gedicht erzählen könnte, aber ich verstehe nicht, was es sagt (schreibt).... Umso mehr kann ich das Unverständliche nicht in meinem Kopf behalten und in der Praxis anwenden. Vielleicht gibt es ja einzigartige Menschen, die alles im Handumdrehen begreifen, aber ich nicht. Nur grundlegendes Wissen kann ich mir merken und anwenden. Ich möchte immer noch studieren, aber ich finde keinen Lehrer.

Zum Lehrer bin ich wie nach Peking gekrochen, aber ich kann Ihnen schon etwas sagen. Ich war vor ein paar Jahren in der gleichen Situation, als ich begann, die Programmiersprache MQL5 von Grund auf zu lernen.

Frage 1: Was genau ist Ihnen beim Erlernen einer Programmiersprache nicht klar? Nennen Sie mindestens ein Problem und beschreiben Sie konkret, was daran unklar ist.

Mit freundlichen Grüßen, Vladimir.

 
Константин Сандалиди #:

Denn ich konnte MQL 4 nicht alleine meistern, und ich kann MQL 5 nicht alleine meistern . Und was immer ich lese oder sehe, verstehe ich nicht! Das Niveau meiner Ausbildung ist 0!!! Und alle Artikel sind für fortgeschrittene Benutzer, die einfach in die Dokumentation schauen können.... Das Unverständliche mehrmals zu lesen ist eine Sackgasse des Lernens (Erkenntnis), "Lehrbuch" von S.Kovalev habe ich auswendig gelernt, wie ein Gedicht erzählen könnte, aber ich verstehe nicht, was es sagt (schreibt).... Umso mehr kann ich das Unverständliche nicht in meinem Kopf behalten und in der Praxis anwenden. Vielleicht gibt es ja einzigartige Menschen, die alles im Handumdrehen begreifen, aber ich nicht. Nur grundlegendes Wissen kann ich mir merken und anwenden. Ich möchte immer noch studieren, aber ich finde keinen Lehrer.

Wie oft war ich davon überzeugt, dass es in unverständlichem Material, wenn es nacheinander präsentiert wird, gewöhnlich ein Fragment gibt, an dem es einen "Haken" gibt: davor - alles ist klar, und danach - dunkler Wald .... Ein missverstandener Begriff, ein missverstandenes Konzept....

Und sobald dieses Hindernis überwunden ist, wird die ganze Materie plötzlich kristallklar - bis zu einem neuen "Hindernis" ....

Daher werde ich ein paar Fragen stellen, die natürlich unabhängig voneinander bis ins Unendliche entwickelt werden können. :-)

  1. Verstehen Sie, was ein Programmierer im Prinzip macht? (Wenn nicht, können Sie sich meinen ersten Artikel dieser Serie ansehen und dort in den Kommentaren Fragen zu unklaren Formulierungen stellen).
  2. Wissen Sie, wo Sie die Textdateien, die Sie schreiben, ablegen müssen? Und was man mit ihnen nach dem Schreiben macht?
  3. Verstehen Sie das Konzept einer Funktion? Das Konzept einer Variable?

Wenn die Antworten auf alle Fragen "ja" lauten, dann ist Ihr Vorbereitungsstand NICHT 0!!!! Wenn Sie die Antwort auf mindestens eine Frage nicht wissen oder die Antwort "nein" ist - versuchen Sie noch einmal, den Anfang von Kovalev oder meine bereits veröffentlichten Artikel langsam zu lesen....

Und üben! Das ist wichtig. Öffnen Sie einen Editor, schreiben Sie den Code der Beispiele (Sie können ihn kopieren, aber es ist besser, es selbst zu tun). Kompilieren Sie ihn und prüfen Sie, was Sie erhalten.

Und danach Fragen stellen. Zumindest in meinen Threads, zumindest in parallelen im Forum... Die Suche nach "Fragen von Neueinsteigern" auf der Website hat mir 202 Seiten mit Links geliefert, aber niemand verbietet Ihnen, Ihr eigenes Thema zu erstellen, wenn es sich nicht mit bestehenden Themen überschneidet.

Изучение MQL5 от новичка до профи (Часть I): Начинаем программировать
Изучение MQL5 от новичка до профи (Часть I): Начинаем программировать
  • www.mql5.com
Эта статья является вводной для целого цикла статей о программировании. Здесь предполагается, что читатель вообще не сталкивался с программированием раньше. Поэтому начинаю я с самых основ. Уровень знания программирования: абсолютный новичок.
 
Ausgezeichnet. Ich freue mich auf die nächste Ausgabe
 

Hmmm... Eine weitere Kopie der Bescheinigung. Bezahlen die wirklich 200 Dollar dafür?

void OnStart()
{
   Print(-1<1 u);
   Print(-1*1 ull);
}

Und wer von den Neulingen kann nach dem Lesen der Abschnitte über Literale und Typkonvertierung sagen, was auf dem Bildschirm angezeigt wird, ohne dieses Skript auszuführen?

PS. Es gibt hier keinen Trick, nur die Kenntnis von Literalen und Typkonvertierungsregeln.

PSS. Und ja, es handelt sich um eine Frage aus der Kategorie der Fragen für ein Vorstellungsgespräch im Juni.

 
Vladimir Simakov Typkonvertierung sagen, was auf dem Bildschirm angezeigt wird, ohne dieses Skript auszuführen?

PS. Es gibt hier keinen Trick, sondern nur die Kenntnis von Literalen und Typkonvertierungsregeln.

PSS. Und ja, dies ist eine Frage aus der Kategorie der Fragen in einem Jun-Interview.

Ähem... Es ist mir peinlich zu fragen, aber ich muss....

  • Wie oft kommen solche Konstrukte in echtem MQL5-Code vor?
  • "Jun-Interview"... Bedeutet es, dass Sie persönlich große Unternehmen kennengelernt haben, zu deren Haupttätigkeitsbereichen MQL gehört? (Persönlich habe ich das bisher nicht erlebt).
  • Und wird dieser Code in allen c-ähnlichen Sprachen die gleichen Ergebnisse liefern?

Kurz gesagt, warum braucht ein Neuling ein so tiefes Verständnis von Literalen?


P.S. Ich persönlich, obwohl ich weit davon entfernt bin, ein Neophyt zu sein, bin bei Ihrem Test durchgefallen, ohne eine einzige Frage richtig beantwortet zu haben. Ich habe etwas Ähnliches in Lehrbüchern gelesen - entweder in Java oder in PHP - aber das ist schon so lange her, und es entspricht nicht dem praktischen Code, den ich bisher lesen oder schreiben musste... Ich werde kein Junkie in deinem Büro sein. Also... was?

P.P.S. Ich denke, wenn Sie einen Artikel über Literale schreiben, könnte er nicht nur für mich nützlich sein. ;-) Vor allem, wenn Du Deine Erfahrungen mitteilst, die nicht in der Hilfe.... stehen. Wie auch immer, undokumentierte Funktionen sind mir normalerweise sehr peinlich, weil sie sich zu oft in neuen Versionen ändern, aber man weiß ja nie.... Vielleicht wird es ja wirklich wichtig oder zumindest nützlich sein?