OOP, templates et macros dans mql5, subtilités et utilisations - page 12

 
Alexey Navoykov:
Ok. Mais vous devriez quand même penser aux méthodes abstraites. Sans elles, tout semble très peu fiable.

Je pense dans la direction d'un tel sous-langage sans typage explicite du tout. Seulement au moment de l'exécution. Je ne pense pas qu'une architecture bien réglée de ce type puisse entraîner des erreurs.

 

Je ne pense pas qu'une architecture bien réglée de ce type puisse entraîner des erreurs.

De quoi s'agit-il ?
 
Алексей Тарабанов:

Je ne pense pas qu'une architecture bien réglée de ce type puisse entraîner des erreurs.

De quoi s'agit-il ?

Il s'agit de la préoccupation du camarade selon laquelle les erreurs d'exécution sont un point de repère trop peu fiable pour un bon débogage de programme

 
Ilya Malev:

Je pense dans la direction d'un tel sous-langage sans typage explicite du tout. Seulement au moment de l'exécution. Je ne pense pas qu'une architecture bien réglée de ce type puisse entraîner des erreurs.

Eh bien, vous avez tort. L'absence de typification est une chose mauvaise. Bien sûr, il y a des langages plus lamentables sans cela, mais c'est quelque chose que vous devez éviter, pas aspirer à. Plus le compilateur vous jure dessus, mieux c'est, cela signifie que vous êtes sur la bonne voie.
 
Ilya Malev:

Il s'agit de la préoccupation du camarade selon laquelle les erreurs d'exécution sont un critère trop peu fiable pour un débogage de qualité des programmes.

Ilya, si seulement il y avait quelque chose à déboguer...

 
Alexey Navoykov:
Mais c'est un argument futile. Le manque de dactylographie est un mal. Il y a certainement des langages moins bons sans cela, mais c'est quelque chose dont il faut s'éloigner, pas un objectif à atteindre. Plus le compilateur vous jure dessus, mieux c'est, cela signifie que vous êtes sur la bonne voie.

Nous n'écrivons pas ici des stations de contrôle orbital, mais plutôt des solutions simples, stéréotypées et formulées qui diffèrent peu les unes des autres. Dans ce contexte, l'absence de contrôle strict du type de produit, au profit d'une commodité maximale, est exactement ce que le médecin a ordonné. Les amateurs de toutes sortes de réseaux neuronaux et d'aide au fonctionnement des GPU peuvent dormir sur leurs deux oreilles. Les adeptes de la performance maximale le peuvent aussi.

 
Ilya Malev:

Dans ce contexte, l'absence d'un contrôle strict du type de produit et une commodité maximale sont exactement ce que le médecin a ordonné.

D'ailleurs, MQL n'a pas de vérification de type pour les pointeurs. Un pointeur de base est implicitement remplacé par un pointeur dérivé, ce qui ne devrait pas arriver.

 
Ilya Malev:

Nous n'écrivons pas ici des stations de contrôle orbital, mais plutôt des solutions simples, stéréotypées et formulées qui diffèrent peu les unes des autres. Dans ce contexte, l'absence de contrôle strict du type de produit, au profit d'une commodité maximale, est exactement ce que le médecin a ordonné. Les amateurs de toutes sortes de réseaux neuronaux et d'aide au fonctionnement des GPU peuvent dormir sur leurs deux oreilles. Les adeptes de la productivité maximale le peuvent aussi.

Le problème ne réside pas dans le typage en tant que tel, mais dans la manière dont il est présenté et dans les perspectives de projets complexes avec des réseaux neuronaux, des GPU, etc. Les langages à typage dynamique, comme Python, où il n'y a pas de difficultés de programmation évidentes, tandis que les langages à typage statique et à compilateur casse-tête à la C, resteront dans le giron des Old Boys, c'est-à-dire des retraités).
 
Philipp Negreshniy:
les perspectives de projets complexes avec des réseaux neuronaux, des GPU, etc. pour des langages avec typage dynamique, comme Python, où il n'y a pas de difficultés de programmation explicites
Vous vouliez probablement dire : où il n'est pas nécessaire d'être un programmeur ) En fait, les langages conçus pour les nuls. Et ces langages sont en fait juste un shell, appelant certains ou d'autres codes écrits dans des langages de programmation normaux.
 
Alexey Navoykov:
Vous vouliez probablement dire : où vous n'avez pas besoin d'être un programmeur) En fait, les langages conçus pour les nuls. Et ces langages sont essentiellement juste un shell, appelant un code quelconque ou autre écrit dans des langages de programmation normaux.
Je voulais juste dire à propos des programmeurs et des programmes normaux, appliqués, ce dont parle cette branche et le site, et vous voulez dire ceux qui écrivent des langages, ceux du système, qui semblent n'avoir rien à faire ici, à part pirater quelque chose ;)