Styler im MetaTrader 5-Handelsterminal - Seite 6

 
Renat :

Wenn Sie die Code Base selbst sammeln, verwalten und bezahlen, stellt sich diese Frage nicht mehr.

Nein, Sie lachen ja doch.

Wie verhält sich der Styler zur Basis? Wie verhält sich das Werkzeug eines Programmierers (das er benutzt, um seine Arbeit zu erleichtern) zu den Regeln der Veröffentlichung (die vielleicht gar nichts mit seiner Arbeit zu tun haben)?

Sie haben selbst gesagt, dass alle Codes vor der Veröffentlichung automatisch vom Styler "gekämmt" werden. Lassen Sie ihn sie also vor der Veröffentlichung in Ihrem Stil "kämmen", darüber wird niemand streiten!

Trennen Sie die Begriffe "Basis" und "Styler", und alles wird sich fügen.



Renat:

Oder glauben Sie, dass hier alles umsonst gemacht wird?

Renat, Sie wissen sehr wohl, dass die Basis Einkommen bringt (wenn auch indirekt).

Und aus irgendeinem Grund geben Sie das Terminal auch noch kostenlos ab.



Renat:

Jetzt geht es nur noch darum, dass es prinzipiell schlecht ist, weil es nicht anpassbar ist.

Lassen Sie uns zu bestimmten Punkten übergehen - geben Sie an, welcher Punkt und warum er vom Styler nicht korrekt ausgeführt wird.

Der Fehler liegt nicht in einer bestimmten Maßnahme, sondern in der Vorgehensweise selbst.

Es ist inakzeptabel, sich auf einen (beliebigen) Stil festzulegen. Sie sind keine Pioniere, und vor Ihnen haben sich bereits mehrere verschiedene Programmierungsstile etabliert. Jede hat ihre eigenen Vor- und Nachteile, und jede ist dem Benutzer vertraut.

Die Wahl einer Option bedeutet, dass Sie automatisch mehr als die Hälfte der Programmierer ablehnen. Sie werden sie nicht zwingen, sich umschulen zu lassen. Außerdem beginnen viele mit dem Schreiben in MQL, nachdem sie bereits solide Erfahrungen mit der Programmierung in anderen Sprachen gesammelt haben.


Die Lösung ist einfach und naheliegend - machen Sie anpassbare Parameter und ein paar Standardstile. Setzen Sie Ihre standardmäßig, aber erlauben Sie, seine Einstellungen zu ändern. Glauben Sie mir, Neulinge (wenn Sie sich plötzlich Sorgen machen, dass sie anfangen, "falsch" zu schreiben) werden niemals in diese Einstellungen gehen!


Beispiele für aufzuführende Einstellungen? ;)

 
Vielen Dank, ein Punkt "wie viele Leerzeichen vor einer geschweiften Klammer" wurde bereits berücksichtigt. Wir setzen 2 und Sie 0 ein.


Lassen Sie uns zu den nächsten Punkten übergehen.

 
Renat :
Danke, ein Punkt "wie viele Leerzeichen vor der geschweiften Klammer" wird geäußert. Wir setzen 2 und Sie 0 ein.


Lassen Sie uns zu den nächsten Punkten übergehen.

  1. Leerzeichen um = += -= *= /* -- ++ + - * /, nach "(", nach "," und vor ")";
  2. Ein Tabulator anstelle von 3 Leerzeichen in der Einrückung wäre toll.
 
Renat :

Lassen Sie uns zu den nächsten Punkten übergehen.

Leiden Sie nicht so sehr. "Alles wurde schon vor uns gestohlen."

Nehmen Sie die Liste von Astyle. Die vollständige Liste von uncrustify wird Sie wahrscheinlich nicht inspirieren, und Sie brauchen sie wahrscheinlich auch nicht, aber sie ist kurz und übersichtlich - Sie können auswählen, was Sie brauchen.

Artistic Style
  • astyle.sourceforge.net
becomes (with break‑after‑logical):
 
komposter :
  1. Leerzeichen um = += -= *= /* -- ++ + - * /, nach "(", nach "," und vor ")";
  2. Tabulatoren anstelle von 3 Leerzeichen in der Einrückung wären klasse.


zu Punkt 2: Tabellierung ist schlecht - versuchen Sie, denselben Code in verschiedenen Editoren zu betrachten... schwebt, um es milde auszudrücken
 
mql5 :


zu Punkt 2: Tabellierung ist schlecht - versuchen Sie, denselben Code in verschiedenen Editoren zu betrachten... wird gelinde gesagt schweben
komposter:
  1. Leerzeichen um = += -= *= /* -- ++ + - * /, nach "(", nach "," und vor ")";
  2. Tabulatoren anstelle von 3 Leerzeichen in der Einrückung wären klasse.


Deshalb müssen Sie es nicht auf Ihre Weise kämmen. Jeder hat seine eigenen Kakerlaken in seinem Kopf. Gebt dem Volk Brot und Spiele. Wir werden selbst entscheiden, was uns gefällt.

 
mql5 :


zu Punkt 2: Tabellierung ist schlecht - versuchen Sie, denselben Code in verschiedenen Editoren zu betrachten... um es gelinde auszudrücken, es wird schwimmen

Die Lösung ist einfach: Der Tabulator (Einzug) wird entweder durch das Tabulatorzeichen (dann kann er fließend sein) oder durch die richtige Anzahl von Leerzeichen (dann ist alles überall gleich) erreicht.

Artistic Style
  • astyle.sourceforge.net
becomes (with break‑after‑logical):
 

Der zweite Punkt "Trennen Sie die Vorgänge durch Leerzeichen" wird geäußert.


Gibt es noch andere Punkte?

 
Renat :

Der zweite Punkt der "getrennten Betriebsräume" wird angesprochen.

Gibt es weitere Punkte?


class Class
{ // скобка на уровне объявления
private: // спецификаор на уровне объявления
   // приватные типы
   definition; // объявления и определения функций и членов с отступом
  
protected:
   // защищённые типы
   definition;
public:
   // публичные типы
   definition;

public:
   definition;
  
protected:
   definition;
  
private:
   definition;

}; // скобка на уровне объявления

Enums:

enum ProceedObject
{ // скобка на уровне объявления
   EPO_BAT,
   EPO_LEFT_BORDER,
   EPO_RIGHT_BORDER,
   EPO_UP_BORDER,
   EPO_DOWN_BORDER,
   EPO_FLOOR,
   EPO_CEILING,
   EPO_BRICKS, // значения по отступу,
}; // скобка на уровне объявления

Wenns:

if(condition1) 
{
   DoSomething();
   //...
}
else if(condition2)
{
   DoSomethingOther();
   //...
}
else
{
   DoSomethingOtherAgain();
   //...
}

Süßigkeiten

switch(condition) 
{
    case 1:
    case 2:
        x = ...;
    break;
    case 3:
{
         x = ...;
//...
}
    break;
    default:
        x = ...;
    break;
}
 

Die spezifischen Punkte, die von Interesse sind, sind "es funktioniert jetzt so, und es sollte so funktionieren".


Die Angleichung der Klammern wurde bereits angesprochen.