Version bêta de l'IDE MetaTrader 4 comprenant un nouveau compilateur et un nouvel éditeur MQL4 - page 18

 
Barbarian:
1. Il a compris son erreur et c'était dans les noms des variables. À propos, j'ai vu plusieurs fois une norme similaire pour la dénomination des variables. J'ai voulu utiliser cette méthode moi-même, mais je l'ai refusée parce que j'avais lu quelque part qu'elle serait sûre pour les décompilateurs et qu'ils utilisent cette même norme pour la dénomination des variables. Je les ai donc nommés comme avant, pas par leur type, mais par leur nom :) 2. Ce que je veux dire, c'est que 99 % n'est pas 100 % et qu'il est possible qu'une personne n'ait pas réellement utilisé le code de quelqu'un d'autre mais qu'elle ait pris l'habitude de nommer ses variables de cette façon dans son code. 3. D'ailleurs, il s'est excusé plus tard, alors pourquoi en parler maintenant...

1. Ces normes sont adoptées dans les décompilateurs, principalement... C'est une norme assez particulière, vous ne trouvez pas ? Ou Points_For_Close, ou gi_34... ...où se trouve le poids sémantique plus important de la variable ?

2. Voulez-vous dire qu'une personne qui programme depuis 40 ans écrit encore de tels noms de variables, que seul un novice vert aurait la flemme d'écrire ? Et puis, un mois plus tard, lorsqu'il voit gi_34 à la ligne 5432 du code, il se rappelle immédiatement pourquoi il a déclaré cette variable au début du code et pour quoi faire et pourquoi elle est enregistrée à la ligne 2356 et utilisée à la ligne 5432 ? Je n'y crois pas.

3. A une question d'affirmation, une réponse a été donnée.
 

Montrez-moi un homme qui programme depuis 40 ans.

Montrez-moi un homme qui programme depuis 40 ans et qui n'a jamais eu la moindre idée du Hongrois.

Marasme ?

Sclérose ?

 
FAQ:

Montrez-moi un homme qui programme depuis 40 ans.

Montrez-moi un homme qui programme depuis 40 ans et qui n'a jamais eu la moindre idée du Hongrois.

Marasme ?

Sclérose ?

Eh bien, il s'avère que c'est la raison pour laquelle le compilateur a déclaré son code décompilé. Après tout, les décompilateurs utilisent la notation hongroise avec des chiffres et des _...

Je connais des gens qui l'utilisent avec succès et ne reçoivent pas de messages décompilés. C'est juste que les noms ont une signification sémantique, pas un code alphanumérique.

 
Mais il devrait au moins être au courant...
 
FAQ:
Mais il devrait au moins être au courant...
Je suis d'accord à 100%.
 
VOLDEMAR:


Expliquez-moi ce que je ne comprends pas ?

comment nommer des variables comme dby_45, jhgdf_54, slkjfhk_56 ou buystop, takeprofit ?

Lorsqu'une personne écrit une variable pour elle-même, elle n'utilise guère ce charabia pour pouvoir deviner elle-même de quel type de variable il s'agit et ce qu'elle représente. Cela me semble délirant, j'écris moi-même des EA et de temps en temps j'oublie ce qu'elles portent, même dans les noms significatifs ......

artmedia70: " Ceux qui écrivent réellement du code eux-mêmes n'ont jamais rencontré une telle entrée de compilateur. "

Je suis d'accord avec cela à cent pour cent .........

Je m'explique : vous avez écrit des absurdités dans votre exemple, je n'ai pas écrit sur une telle dénomination de variables. Lisez mon post ci-dessus, où je réponds à l'homme pourquoi il pourrait avoir un problème. Ou vous pouvez voir le résultat de la décompilation, alors vous verrez comment le décompilateur nomme logiquement les variables, mais pas comme vous l'avez dans l'exemple, il y a du charabia dans les noms des variables.
 
Barbarian:
Je m'explique : les bêtises écrites dans votre exemple, je n'ai pas écrit sur ce type de dénomination des variables. Lisez mon post ci-dessus où je réponds à l'homme pourquoi il peut avoir un problème. Ou vous pouvez voir le résultat de la décompilation, puis voir comment le décompilateur nomme logiquement les variables, mais pas comme dans votre exemple, c'est juste du charabia dans les noms des variables.

La logique de quoi ? Hongrois ?


Ok. Nous savons maintenant qu'il s'agit de global int et global double. Et alors ? Analyse de la logique (qui ne représente qu'un dixième du code) :


J'ai renommé moi-même la moitié de ces variables, en analysant la logique de l'indécis qui ralentit brutalement et impitoyablement. J'ai voulu l'optimiser mais j'ai échoué...

J'ai échoué, non pas parce que je ne pouvais pas, mais parce que j'étais trop épuisé pour identifier ce dont les variables sont responsables, pour retracer la logique. Puis j'ai réalisé que l'effort ne vaut pas le simple test de ses lectures dans le testeur (dans la forme dans laquelle il est absolument inadapté pour le testeur - même aux prix d'ouverture pour un passage prend environ 10 secondes)

 
artmedia70:

La logique de quoi ? Hongrois ?

Ok. Nous savons maintenant qu'il s'agit de global int et global double. Et alors ? Analyse de la logique (qui ne représente qu'un dixième du code) :

J'ai renommé moi-même la moitié de ces variables, en analysant la logique de l'indécis qui ralentit brutalement et impitoyablement. J'ai voulu l'optimiser mais ça a échoué...

Il a échoué, non pas parce que je n'ai pas pu, mais parce que j'ai eu trop de mal à comprendre à quoi servent les variables pour pouvoir suivre la logique. Puis j'ai réalisé que l'effort ne vaut pas le coût d'un simple test pour le testeur (dans la forme dans laquelle il est absolument inutilisable pour le testeur - même au prix d'ouverture, il faut environ 10 secondes pour un passage).

Maintenant je vois que tu peux dire beaucoup de choses sans but. Pourquoi cet exemple m'est-il donné ? J'ai seulement compris qu'après avoir écrit sur votre attitude négative envers ceux qui utilisent le code d'autrui, vous avez décidé de montrer à tout le monde à quel point vous êtes décent, etc. Mais après avoir lu cet exemple, je comprends que vous utilisez du code écrit par quelqu'un d'autre :) Quoi qu'il en soit, j'ai clairement indiqué que je souhaitais nommer les variables de cette façon auparavant, mais j'ai fini par y renoncer. Par conséquent, il n'est pas nécessaire de me donner un exemple de ce dont je n'ai pas besoin, et le fil n'est pas créé pour de telles inondations :)
 
Barbarian:
Maintenant je vois que tu peux dire beaucoup de choses sans but. Pourquoi cet exemple m'est-il donné ? J'ai seulement compris qu'après avoir écrit sur votre attitude négative envers ceux qui utilisent le code d'autrui, vous avez décidé de montrer à tout le monde à quel point vous êtes décent, etc. Mais après avoir lu cet exemple, je comprends que vous utilisez du code écrit par quelqu'un d'autre :) Quoi qu'il en soit, j'ai clairement indiqué que je souhaitais nommer les variables de cette façon auparavant, mais j'ai fini par y renoncer. Je n'ai donc pas besoin d'évoquer quelque chose dont je n'ai pas besoin comme exemple et ce fil de discussion n'a pas été créé pour une telle bêtise :)
Et je n'utilise pas le code d'autres personnes dans mes développements - uniquement à des fins de démonstration. C'est drôle, n'est-ce pas ? On dirait l'URSS, où il n'y avait pas de sexe.
 
ouais... comme le dit le dicton : "Ne jugez pas, de peur d'être jugés".
Raison: