Alexey Viktorov: Il est préférable de ne pas commencer par là. C'est ce qui vous fait fuir. Même moi, un partisan de la POO qui la connaît très mal, j'ai trébuché à cause de ce texte... ...n'a rien compris. C'est pourquoi j'essaie d'expliquer la différence au niveau le plus bas.
Elle peut aussi être plus simple.
OOP - permet de définir une interface unique. Après cela, toutes les choses spécifiques à la plate-forme se "cachent" et n'interfèrent pas avec le travail.
Bien sûr, vous pouvez le faire en adoptant une approche purement procédurale. Mais la prise en charge de la variante procédurale sera plus compliquée, car dans chaque fonction, nous devrons traiter toutes les plateformes à la fois.
Dès que l'utilisateur appelle la fonction New_bar(), il recevra une réponse de celle-ci concernant l'événement d'une nouvelle barre sur le délai demandé. En même temps, après l'appel de la fonction, si un nouvel événement de barre s'est produit, le drapeau d'événement est effacé. En d'autres termes, la notification d'une nouvelle barre de l'horizon temporel souhaité ne peut être reçue qu'une fois par barre. Après avoir reçu la notification d'une nouvelle barre, cette barre n'est plus nouvelle.
Voici la première version de la fonction. Vous pouvez l'affiner et le développer davantage. Si quelqu'un remarque une erreur, merci de la commenter.
À première vue, tout semble aller bien. Je n'ai pas creusé très profondément.
Personnellement, je diviserais probablement le temps précédent et actuel par la durée de la barre, et si la valeur a changé, une nouvelle barre apparaîtrait. Mais, il est aussi possible de le faire de cette façon.
Quant au style - personnellement, je suis un peu gêné par le fait que l'on ne puisse pas savoir de quel type de variable il s'agit (je suis habitué à la "notation hongroise, où le préfixe de toute variable est une abréviation de son type), mais peut-être est-ce inutile.
Andrey Kisselyov: @Peter Konow même sans OOP vous pouvez le rendre plus facile, pensez-y et essayez.
Respectueusement.
Bien sûr, il est possible que vous puissiez le faire. J'avais une heure pour le faire. Vous pouvez y réfléchir et réduire quelque chose. Tout cela est possible.
Andrey Kisselyov: @Peter Konow même sans OOP vous pouvez le rendre plus simple, pensez-y et essayez.
Sincèrement.
Si j'ai bien compris. L'objectif est de faire en sorte que cela fonctionne. S'il avait publié un fichier protégé avec cette fonction, vous n'auriez jamais deviné qu'il avait été écrit de cette façon.
À première vue, tout semble aller bien. Je n'ai pas creusé assez profondément.
Personnellement, je diviserais probablement le temps précédent et actuel par la durée de la barre, et si la valeur a changé, une nouvelle barre est arrivée. Mais, il est aussi possible de le faire de cette façon.
Quant au style - personnellement, je suis un peu gêné par le fait que l'on ne puisse pas savoir de quel type de variable il s'agit (je suis habitué à la "notation hongroise, où le préfixe de toute variable est une abréviation de son type), mais peut-être est-ce inutile.
Eh bien, la perception du style est une question d'habitude. Moi aussi, je trouve difficile de lire les codes donnés dans les branches. Ça m'énerve juste parfois.))
OOP - permet de définir une interface unique. Après cela, toutes les choses spécifiques à la plate-forme se "cachent" et n'interfèrent pas avec le travail.
Il est bien sûr possible de le faire selon une approche purement procédurale. Mais la prise en charge de la variante procédurale serait plus difficile, car dans chaque fonction, il faudrait traiter toutes les plates-formes à la fois.
Il a déjà été discuté qu'une interface unique n'est pas applicable à la programmation de toutes les tâches de calcul... Mettre de belles choses sous forme d'interfaces est un procédé purement cosmétique qui ne s'applique qu'au code déjà achevé et qui entrave encore plus le support et le raffinement du code...
Si j'ai bien compris. L'objectif est de faire en sorte que cela fonctionne. S'il avait mis en ligne un fichier protégé avec cette fonction, nous n'aurions jamais deviné qu'il était écrit de cette façon.
Il est souhaitable qu'il ne se contente pas de fonctionner, mais qu'il fonctionne rapidement, avec précision, sans erreurs, qu'il ait une forme structurée dans la source et qu'il soit clairement rédigé.
Si vous n'avez pas de compte, veuillez vous inscrire
Autorisez l'utilisation de cookies pour vous connecter au site Web MQL5.com.
Veuillez activer les paramètres nécessaires dans votre navigateur, sinon vous ne pourrez pas vous connecter.
Vous êtes connecté. L'authentification à deux facteurs a été désactivée. Configurez-la à nouveau et scannez un nouveau code QR, ou continuez avec l'authentification à deux facteurs désactivée.
Il est préférable de ne pas commencer par là. C'est ce qui vous fait fuir. Même moi, un partisan de la POO qui la connaît très mal, j'ai trébuché à cause de ce texte... ...n'a rien compris. C'est pourquoi j'essaie d'expliquer la différence au niveau le plus bas.
Elle peut aussi être plus simple.
OOP - permet de définir une interface unique. Après cela, toutes les choses spécifiques à la plate-forme se "cachent" et n'interfèrent pas avec le travail.
Bien sûr, vous pouvez le faire en adoptant une approche purement procédurale. Mais la prise en charge de la variante procédurale sera plus compliquée, car dans chaque fonction, nous devrons traiter toutes les plateformes à la fois.
Je m'excuse pour ce léger retard.
Voici la première version de la fonction. Vous pouvez l'affiner et le développer davantage. Si quelqu'un remarque une erreur, merci de la commenter.
Respectueusement.
Voici la première version de la fonction. Vous pouvez l'affiner et le développer davantage. Si quelqu'un remarque une erreur, merci de la commenter.
À première vue, tout semble aller bien. Je n'ai pas creusé très profondément.
Personnellement, je diviserais probablement le temps précédent et actuel par la durée de la barre, et si la valeur a changé, une nouvelle barre apparaîtrait. Mais, il est aussi possible de le faire de cette façon.
Quant au style - personnellement, je suis un peu gêné par le fait que l'on ne puisse pas savoir de quel type de variable il s'agit (je suis habitué à la "notation hongroise, où le préfixe de toute variable est une abréviation de son type), mais peut-être est-ce inutile.
@Peter Konow même sans OOP vous pouvez le rendre plus facile, pensez-y et essayez.
Respectueusement.
@Peter Konow même sans OOP vous pouvez le rendre plus simple, pensez-y et essayez.
Sincèrement.
Si j'ai bien compris. L'objectif est de faire en sorte que cela fonctionne. S'il avait publié un fichier protégé avec cette fonction, vous n'auriez jamais deviné qu'il avait été écrit de cette façon.
À première vue, tout semble aller bien. Je n'ai pas creusé assez profondément.
Personnellement, je diviserais probablement le temps précédent et actuel par la durée de la barre, et si la valeur a changé, une nouvelle barre est arrivée. Mais, il est aussi possible de le faire de cette façon.
Quant au style - personnellement, je suis un peu gêné par le fait que l'on ne puisse pas savoir de quel type de variable il s'agit (je suis habitué à la "notation hongroise, où le préfixe de toute variable est une abréviation de son type), mais peut-être est-ce inutile.
Eh bien, la perception du style est une question d'habitude. Moi aussi, je trouve difficile de lire les codes donnés dans les branches. Ça m'énerve juste parfois.))
Elle peut aussi être plus simple.
OOP - permet de définir une interface unique. Après cela, toutes les choses spécifiques à la plate-forme se "cachent" et n'interfèrent pas avec le travail.
Il est bien sûr possible de le faire selon une approche purement procédurale. Mais la prise en charge de la variante procédurale serait plus difficile, car dans chaque fonction, il faudrait traiter toutes les plates-formes à la fois.
Il a déjà été discuté qu'une interface unique n'est pas applicable à la programmation de toutes les tâches de calcul... Mettre de belles choses sous forme d'interfaces est un procédé purement cosmétique qui ne s'applique qu'au code déjà achevé et qui entrave encore plus le support et le raffinement du code...
Si j'ai bien compris. L'objectif est de faire en sorte que cela fonctionne. S'il avait mis en ligne un fichier protégé avec cette fonction, nous n'aurions jamais deviné qu'il était écrit de cette façon.
meilleures salutations.