Réaliser un projet de crowdsourcing sur Canvas - page 3

 
o_O:

Je dirais que c'est une beauté.)

La vitesse est très bonne. Tout est tout à fait adéquat en termes de temps de rendu et de contrôle.

Vous voyez le problème : tout cela est cool et génial, mais tout le monde ne peut pas écrire comme dans les codes ci-joints.

Je serais heureux de participer, mais je n'ai aucune connaissance, et ils ne le font pas, non pas parce que je n'apprends pas et ne veux pas apprendre, ils ne le font pas, parce que c'est nulle part de bien enseigner.

J'ai maintes fois soulevé la question d'une bonne formation compétente, comment programmer correctement et comment ne pas programmer correctement, qu'est-ce que la POO et comment l'utiliser.

Maintenant, seuls ceux qui ont étudié la programmation dans des instituts et qui ont beaucoup de connaissances et comprennent beaucoup de choses peuvent répondre à votre appel, mais combien d'entre eux voyez-vous ?

Par exemple, je ne comprends pas du tout ce genre de choses :

class A { public:
              A *operator<<( int )       { return &this; }
        const A *operator>>( int ) const { return &this; }
};
void OnStart()
{
        A a;
        a >> 0 << 0;                       //нет сообщения об ошибке
        a.operator>>( 0 ).operator<<( 0 ); //error: правомерно

Montrez-moi dans la documentation ou ailleurs où je peux apprendre et comprendre où appliquer ceci et comment le comprendre en général ...

Vous voulez écrire des choses cool et utiles et c'est très bien, mais qui va l'écrire avez-vous préparé ? Avez-vous enseigné aux gens ? Ou encore, une bonne idée va mourir parce que 1,5 personne y participera...

En réfléchissant tout haut, le projet le plus nécessaire et le plus attendu serait un projet pour enseigner (bien, simple, utile, compétent) la programmation depuis les bases jusqu'aux exemples comme je l'ai montré ci-dessus. Je le ferais bien mais je ne suis pas une professionnelle, je ne sais pas comment le faire correctement !

Et l'utilité pour tous sera cent mille fois supérieure à celle du projet où 1,5 gars intelligents inventeront des choses cool (à leur avis)...

 
o_O:
hmm, quel est le problème avec l'édition ?
Le problème principal et le plus important est-il la chaîne d'entrée limitée ou quelque chose a-t-il changé ?
 
Vladimir Pastushak:
Vous voulez écrire des choses cool et utiles et c'est très bien, mais qui va l'écrire avez-vous préparé ? Vous avez enseigné aux gens ? Ou encore, une bonne idée mourra parce que 1,5 personne y participera...

Parfois, 0,5 personne suffit, si c'est un génie du développement ;)


En réfléchissant à voix haute, le projet le plus nécessaire et le plus attendu serait un projet de formation...

c'est un sujet pour un autre fil.

Et le bénéfice pour tous sera cent ou mille fois supérieur à celui d'un projet où 1,5 gars intelligents écriraient des choses cool (à leur avis)...


ce ne sera pas une chose cool. ce sera juste un must have. et ce n'est pas fait pour les gens intelligents, mais pour les gens comme vous, pour le freelancing, pour le marché.
 
Zorro:
Le problème le plus important et principal est la chaîne de saisie limitée ou quelque chose a changé ?

(-) pour ne pas utiliser un objet graphique de MT.

Nous devons faire notre propre édition, avec le blackjack, etc.
Dessiné sur un bitmap générique de l'application,

 

Un label et un tour avec une chaîne illimitée est déjà un plus en soi ;)

Et oui, c'est Anatoly qui est censé être dans le fil.

 

Maintenant que nous avons plus ou moins compris ce qu'il faut faire, je suggère d'ajouter une clause d'architecture de classe de base à la première tâche (pour tous les contrôles futurs, pas seulement les boutons)

----
En général, je vois l'ensemble du projet dans la direction suivante

1. Nous allons écrire un bouton et le rendre sur le canevas. Avec ses événements. Nous allons entrer dans le vif du sujet et tester le modèle de gui bitmap.

2. Faire une classe qui combine un groupe d'éléments GUI avec des événements (ceci est pour prendre en compte le zorder lors du rendu et des événements)

Ce sont deux étapes compliquées, avec un peu de chance il y aura plusieurs options, nous en choisirons une.
Après cela, je vais lancer le projet open source dans bitbucket. Et passer à la troisième étape.

3. Quand l'architecture devient claire, tout le monde peut déjà la prendre et faire des contrôles de base basés sur elle : Edit, Static, Droplist, etc. Je me limite à ces éléments pour l'instant, car ils seront suffisants pour la première tâche pratique.

Je ne conteste pas que certains ajustements architecturaux seront nécessaires au stade du développement des contrôles. Ce problème sera résolu en quelques itérations.

 
o_O:

il ne s'agira pas d'un truc cool. ce sera simplement un must have. et il n'est pas fait pour les gens intelligents, mais pour des gens comme vous, pour le freelancing, pour le marché.

1 - Je ne fais pas confiance aux choses/codes que je ne comprends pas

2 - Autant que je me souvienne, Kanvas ne fonctionne pas dans le testeur de stratégie, ce qui pour beaucoup est un énorme inconvénient, surtout quand on teste des produits payants du marché, ils ne fonctionneront tout simplement pas.

3 - Je vous souhaite bonne chance...

ZS : Et je ne comprends pas ce que signifie"doit avoir" ...

 
Vladimir Pastushak:
...

ZS : Et je ne comprends pas ce que signifie"doit avoir" ...

Il faut juste "avoir" ...
 
Комбинатор:

Un label et un trajet avec une chaîne illimitée sont déjà un plus en soi ;)

Et oui, Anatoly est censé être appelé sur le sujet

À l'origine, j'avais prévu de développer ma bibliothèque dans la même direction, comme suggéré dans ce fil de discussion. J'ai délibérément commencé par des primitives standard simples, pour élaborer un schéma, car au début c'est plus facile. Aujourd'hui, pratiquement tout le matériel a été publié dans des articles. La première étape par rapport à mon plan initial est presque terminée. Il y aura un article principal de plus ainsi que quelques articles avec des mises à jour à la demande des utilisateurs intéressés. J'ai également procédé à une certaine optimisation du code et des schémas, ce qui a permis de réduire un peu la consommation des ressources du CPU.

Le schéma ressemble actuellement à celui présenté dans la figure ci-dessous. Il ne s'agit pas de la version finale et elle sera modifiée à plusieurs reprises au cours du développement de la bibliothèque. Mais je n'exclus pas non plus de fortes modifications, si une variante est trouvée qui donne des avantages et de nouvelles fonctionnalités qui ne sont pas disponibles dans la version actuelle.

Tous les documents publiés sont disponibles et vous êtes libre de les utiliser dans vos propres projets ou dans des versions de bibliothèques similaires. C'est pour ça que tout a été publié. Au fur et à mesure de la publication de chaque partie de la série, vous pouvez suivre l'évolution de la bibliothèque.

J'avais prévu d'implémenter tous les contrôles entièrement dessinés sur le canevas (certains d'entre eux ont déjà été implémentés). Il s'agit de la deuxième étape du développement de la bibliothèque. C'est-à-dire que pour chaque contrôle, il y aura un objet distinctde type OBJ_BITMAP_LABEL. Le nombre d'objets graphiques sera beaucoup moins important, ce qui réduira également les ressources du processeur. Encore une fois, tout dépend de la manière dont elle sera mise en œuvre. Il y a toujours quelques variantes. Il est conseillé de les essayer toutes, si c'est la première fois que vous vous trouvez dans cet environnement et que vous n'êtes pas certain que l'option choisie est sans ambiguïté la meilleure.

Et ce n'est qu'après cela que l'on a prévu de passer à la troisième étape, lorsque tous les éléments de l'interface graphique devraient être dessinés sur le même kanvas. En ce qui concerne les bibliothèques pour la création d'interfaces graphiques, elles sont de premier ordre. Et c'est un très gros travail pour une seule personne. Abstraction totale et immersion dans le projet. Concentration maximale pendant une longue période. Et je pense que si vous avez l'intention de devenir un programmeur professionnel, vous devez passer par là. Le fait est que cette expérience peut s'avérer utile dans n'importe quel environnement de programmation par la suite. Mais si vous réunissez une équipe, le développement pourra peut-être être achevé beaucoup plus rapidement.

Je pense que ce projet est très intéressant et utile, tant pour les autres que pour moi-même. Je suivrai avec grand intérêt l'évolution de la situation et étudierai les documents publiés ici. Je vais en tout cas continuer à développer ma version de la bibliothèque et à publier des articles. J'aime le format dans lequel je travaille actuellement. Que ce soit ma participation. Les idées et les codes seront à la disposition de tous et pourront être utilisés. J'ai des exigences très strictes en matière de conception et de description du code. Tout doit être détaillé, soigné, présenté sous forme de schémas, compréhensible par tous et aussi parfait que possible. Sinon, rien ne fonctionnera et vous risquez d'aboutir à rien, comme cela a été le cas à plusieurs reprises sur ce forum pour de nombreuses idées différentes et très intéressantes, bien que les discussions aient impliqué les développeurs les plus professionnels présents sur ce site. J'espère que ce n'est pas le cas et que nous aurons une bonne bibliothèque pour créer des interfaces graphiques pour les terminaux MetaTrader, et que la période interminable de son absence sera oubliée comme un mauvais rêve.

 
o_O:

Salutations aux codeurs.

Il y a une tâche intéressante de faire quelque chose de vraiment utile...

----

Donc, tâche 1 et basique.

1. Nous devons créer une classe de bouton (disons GButton, préfixé par G pour ne pas confondre avec les boutons existants).

Je pense qu'après les articles d'Anatoly, créer à nouveau les mêmes œufs dans le profil est au moins un passe-temps étrange. Le graphisme n'est pas du tout un sujet d'actualité pour MT.

  • Les utilisateurs n'ont pas besoin d'interfaces graphiques. Par conséquent, il est impossible de contrôler l'interface graphique et son développement ne sera jamais rentable.
  • Si vous voulez améliorer vos compétences, il est préférable de trouver immédiatement un emploi en tant que junior. Ainsi, vous pourrez au moins commencer à gagner de l'argent tout de suite et améliorer lentement vos compétences.
  • Un public cible trop étroit. Qui a besoin de bibliothèques ? - Absolument personne, à l'exception d'une poignée de programmeurs, et ils ont depuis longtemps écrit toutes les bibliothèques dont ils ont besoin. Par exemple, j'ai deux bibliothèques graphiques qui me sont propres.

Je ne veux donner de leçon à personne ici, mais je peux vous donner un conseil : les gars, sentez la poudre. Apprenez à travailler avec les utilisateurs. Apprenez leur psychologie. Apprenez à contrôler leurs idées. Puis, revenez rapidement sur terre et vous raisonnerez d'une manière complètement différente. Moi aussi, j'ai cru autrefois à des idées spéciales et belles, mais toutes ces bêtises, ça ne marche pas. Ce dont vous discutez ici n'est utile à personne d'autre qu'à vous.