Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
En bref, à propos de l'ingénierie :
Si l'on souhaite améliorer un certain "A" par un réaménagement, il est nécessaire de préciser ses faiblesses critiques. Il suffit d'en faire la liste et d'expliquer pourquoi ils sont intraitables dans le développement évolutif de "A".
En revanche, personne ne l'interdit. Si vous aimez écrire du code, écrivez-le. Réécrivez "A" mais à votre façon, mais ce sera nouveau.
Max, salut !
J'ai déjà décrit à plusieurs reprises les "défauts" que, de mon point de vue, je vois dans la bibliothèque standard et dans la bibliothèque d'Anatoly.
Ces deux bibliothèques présentent, à mon avis, un inconvénient majeur : l'interface est construite sur des objets graphiques distincts, c'est-à-dire que plus il y a de contrôles dans l'interface, plus il y a d'objets isolés dans le graphique lui-même. D'un côté, cela ne semble pas être un problème, mais d'un autre côté, c'est un problème avec les boîtes de dialogue glisser-déposer, car ce n'est pas un seul objet "formulaire avec éléments" qui est glissé et déposé, mais plusieurs éléments différents. Et cela consomme des ressources supplémentaires.
La bibliothèque d'Anatoly est très chic, mais elle est complexe dans sa composition et difficile à intégrer dans le programme principal. Et la bibliothèque standard est limitée dans les contrôles eux-mêmes, bien que l'architecture originale soit très bonne à mon avis.
En fait, la meilleure solution serait ce que Petr Konov essaie de faire : un constructeur d'interface graphique avec génération de code d'interface graphique, mais avec un modèle d'événement étendu, de sorte que lors de l'intégration avec le programme principal, vous n'auriez pas besoin de vous lancer dans un énorme code d'interface graphique (quelque chose comme l'analogie MVVM), et bien sûr avec des objets que les utilisateurs pourraient développer par eux-mêmes.
Max, salut !
Eh bien, j'ai déjà décrit à plusieurs reprises les "lacunes" que, de mon point de vue, je vois dans la bibliothèque standard et dans la bibliothèque d'Anatoly.
Ces deux bibliothèques présentent, à mon avis, un inconvénient majeur : l'interface est construite sur des objets graphiques distincts, c'est-à-dire que plus il y a de contrôles dans l'interface, plus il y a d'objets isolés dans le graphique lui-même. D'un côté, cela ne semble pas être un problème, mais d'un autre côté, c'est un problème avec les boîtes de dialogue glisser-déposer, car ce n'est pas un seul objet "formulaire avec éléments" qui est glissé et déposé, mais plusieurs éléments différents. Et cela consomme des ressources supplémentaires.
La bibliothèque d'Anatoly est très chic, mais elle est complexe dans sa composition et difficile à intégrer dans le programme principal. Et la bibliothèque standard est limitée dans les contrôles eux-mêmes, bien que l'architecture originale soit très bonne à mon avis.
En fait, la meilleure solution serait ce que Petr Konov essaie de faire : un constructeur d'interface graphique avec génération de code d'interface graphique, mais avec un modèle d'événement étendu, de sorte que lors de l'intégration avec le programme principal, vous ne devez pas entrer dans un énorme code d'interface graphique, et bien sûr avec des objets que les utilisateurs pourraient étendre par eux-mêmes.
la citation doit être lue de bas en haut. Le bas (ce qui est souligné) est plus important. C'est l'élément déterminant.
Avec tout le développement moderne de toutes les interfaces humaines, il est plutôt surprenant de voir les vues coordonnées et les éléments de formulaire au premier plan.
En même temps, tout le monde utilise des navigateurs avec Rest/Ajax, sait ce qu'est MVC, mais ne pense pas à l'interface entre le conseiller expert et son interface graphique.
Si le modèle est décrit et qu'il existe un protocole pour travailler avec lui, l'interface graphique peut être n'importe quoi et ne dépend pas du conseiller expert. C'est une sorte de chose maléfique, maléfique, maléfique de mettre des fenêtres dans le conseiller expert. Le principal objectif des conseillers experts est de négocier, tout le reste doit être retiré du code principal et être facultatif.
la citation doit être lue correctement de bas en haut. Le bas (ce qui est souligné) est plus important. C'est l'élément déterminant.
Avec tout le développement moderne de l'interface humaine, il est assez surprenant de voir les représentations de coordonnées et les éléments de forme au premier plan.
En même temps, tout le monde utilise des navigateurs avec Rest/Ajax, sait ce qu'est MVC, mais ne pense pas à l'interface entre le conseiller expert et son interface graphique.
Si le modèle est décrit et qu'il existe un protocole pour travailler avec lui, l'interface graphique peut être n'importe quoi et ne dépend pas du conseiller expert. C'est une sorte de mal quand on met une boîte dans le conseiller expert. Le principal objectif des conseillers experts est de négocier, tout le reste doit être retiré du code principal et être facultatif.
Je pense que nous devons supposer que, dès le début, les développeurs n'ont pas pensé au fait que la fonctionnalité des interfaces pourrait être nécessaire. Si vous vous souvenez, au début, il n'y avait même pas de POO dans mql, son but principal était seulement d'écrire des indicateurs et tout était conçu pour cela.
Et maintenant nous voyons que mql a déjà travaillé avec des sockets et des bases de données, même au niveau du noyau... Mais les mécanismes d'interaction entre l'utilisateur et le programme sont laissés de côté.
Les développeurs eux-mêmes ont déclaré il y a presque dix ans que le développement d'interfaces est un mécanisme très important d'interaction entre l'utilisateur et l'application et ont développé une bibliothèque standard pour ce cas, mais seulement son applicabilité aux tâches n'ont pas montré et en fait, même aujourd'hui, de nombreux programmeurs ne sont pas conscients de son existence.
Nous allons essayer d'éliminer les lacunes. Même si les autres participants n'en auront pas besoin, une certaine expérience sera tout de même acquise.
J'ai commencé avec votre bibliothèque, je vous en remercie, puis je l'ai un peu modifiée, puis un peu plus, puis encore un peu plus)))) tout changé, y compris les fonctions de ligne réécrites, également la fonction de ligne large de la source Kanvas, supprimé les fausses fonctions, mis le stub sur l'événement. pas encore complètement disparu de la structure W, bien qu'il ne reste pas grand chose là non plus. J'ai ajouté le calcul de la barre à gauche et à droite par recherche binaire parmi d'autres éléments et j'ai également ajouté la recherche binaire elle-même avec la possibilité de choisir une valeur plus grande ou plus petite. J'ai également ajouté la possibilité de construire à partir de tableaux de toutes sortes (séries temporelles/communes) et j'en suis arrivé à la conclusion que je devais modifier construct)))))).
Cool.
Oui, les bibliothèques doivent être soit universelles pour les programmeurs novices, soit plus ciblées pour les plus avancés.
J'ai moi-même plusieurs versions de mon propre iCanvas pour différents usages.
C'est pourquoi j'ai commencé à dresser une liste d'intentions et d'objectifs, ou du moins à indiquer la direction à suivre. Et mettez cette liste dans le premier message tant qu'elle est disponible pour l'édition.
Quoi qu'il en soit, soit je fais quelque chose de mal, soit les modèles de déclaration de classe (vides) ne veulent pas fonctionner. Ce qui fait que le code n'est pas particulièrement pratique.
Je pense changer
Les gars, puisque vous m'avez appris, laissez-moi vous apprendre.
Attendez pour juger - ce n'est même pas plus que l'essentiel. Et le fait que je finisse l'interface graphique est peu probable - c'est ce que j'ai dit au début. Quant aux grands projets - je le dis dans vos lignes de code ne sont pas suffisantes pour rivaliser avec les grands projets......
maintenant la question est de savoir pourquoi le tour ne fonctionne pas
...
Maintenant, la question est de savoir pourquoi cette astuce ne fonctionne pas.