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

 
Реter Konow:

Nikolaï, votre opinion est toujours intéressante. J'ai terminé le projet graphique et je veux juste le donner aux gens. Il reste encore un peu de temps et tout le monde va tester le moteur et le designer. Ensuite, je continuerai avec des développements complètement différents.

Alexey a décidé de m'aider à traduire la matrice en format standard OOP. Ça ne me dérange pas, mais franchement, j'en doute beaucoup. Pour être plus exact, je sais avec certitude que c'est presque impossible. Il faudra attendre un an avant qu'un analogue équivalent soit créé. De mon point de vue, il est logique de donner aux gens la possibilité d'éditer et de développer le projet. Si je l'arrête soudainement, d'autres pourraient continuer.

L'essentiel est de rendre tout cela utile à la communauté).

Je suppose qu'il est grand temps de tourner la page et de passer à autre chose. Bonne expérience acquise.
Mais bien sûr, personne ne développera votre projet. Il faut être réaliste.

 
Nikolai Semko:

Il est probablement plus que temps de tourner la page et de passer à autre chose. Une bonne expérience a été acquise.
Mais bien sûr, personne ne développera votre projet. Il faut être réaliste.

Ils ne se développeront pas, mais ils s'appliqueront.

 
Nikolai Semko:

Piotr, votre création ressemble plus à un langage de demandes qu'à un langage de marquage.
Et comme nous le savons, MQL5 a récemment été capable de travailler avec des bases de donnéesSQLite.

Qu'est-ce qu'une base de données ? C'est un ensemble de tables et de relations entre elles.

Et le langage d'interrogation (SQL - Structured QueryLanguage) travaille avec ces tables (création, modification, interrogation et accès, suppression).
Je ne donnerai aucun conseil. J'ai déjà compris que tu es le genre de personne qui n'a besoin des conseils de personne.
Juste des informations pour la réflexion.
Et il est coûteux d'offrir une solution pour un format qui a déjà été normalisé et développé.
En ce moment, j'étudie Java dans son interaction avec une base de données (MySQL). Java a dû créer des outils spéciaux pour cela (JPA, Hibernate, DAO Design Pattern). Ce sujet est très proche du vôtre. Ces outils sont essentiellement des classes - des traducteurs de Java en SQL.
Mon opinion est qu'il est préférable de commencer par le début après une pratique réussie de la POO et de SQL. Et le langage de balisage XML pourrait également s'avérer utile.

Il sera très utile ! Les solutions multiplateformes fonctionnent sur la base d'une description déclarative de WPF, d'activiti dans android, deXamarin, de pages web en fin de compte - toutes utilisent XML.

"Java a dû créer des outils spéciaux pour cela" - tous les compléments et outils sont créés pour faciliter l'accès, l'accès natif ou même la liaison d'objet, où la lecture des données d'une base de données et l'ajout de données à celle-ci se font sans appel de requêtes du développeur final. Bien sûr, tout fonctionne sur les requêtes, mais tout est profondément caché dans les add-ons.

Et avec Peter, tout s'arrangera s'il a la volonté de le faire. Jusqu'à présent, il a perdu son habitude tenace de vouloir "pousser" son modèle. De mon côté, j'essaie de l'abstraire de sa matrice et de passer à un raisonnement général. Tant qu'il est fixé sur sa matrice, il est difficile de raisonner raisonnablement. Mais les choses avancent bien pour l'instant.

Nikolay, j'espère que vous vous joindrez à notre discussion de temps en temps.

 
Алексей Барбашин:

...

Et tout s'arrangera avec Peter s'il en a la volonté. Jusqu'à présent, il a l'habitude d'essayer de "pousser" son modèle. J'essaie de l'abstraire de sa matrice et de passer à un raisonnement général. Tant qu'il est fixé sur sa matrice, il est difficile de raisonner raisonnablement. Mais les choses avancent bien pour l'instant.

...

Je n'essaie plus de pousser quoi que ce soit). C'est juste que je n'ai aucune idée de comment traduire tout ça en cours. Je suis maintenant entièrement concentré sur le débogage, dès que je le publierai, vous et les autres aurez une meilleure idée de ce que c'est. Alors peut-être qu'il y aura une sorte de plan. Peut-être que le collectivisme sera encore payant dans ce fil).
 
Алексей Барбашин:

Nikolaï, j'espère que vous vous joindrez à la conversation de temps en temps.

Ça ne me dérange pas, mais pour être honnête, je ne sais même pas comment je peux aider. Je l'ai déjà dit plusieurs fois. Pyotr a juste besoin de suivre son propre chemin.

Il se suffit à lui-même et n'a pas besoin de patronage, car il est son propre patron. Même si parfois on a l'impression qu'il a besoin d'un mécénat, mais ce n'est qu'une illusion, un tour, une sorte de leurre :))

 
Nikolai Semko:

Ça ne me dérange pas, mais pour être honnête, je ne sais même pas comment je peux aider. Tout a déjà été dit de nombreuses fois. Peter a juste besoin de suivre son propre chemin.

Il se suffit à lui-même et n'a pas besoin de supervision, car il est son propre patron. Même si parfois on a l'impression qu'il a besoin d'un mécénat, mais ce n'est qu'une illusion, une sorte de leurre :))

Nikolaj, pensez-vous qu'il vaut la peine d'abandonner la tentative de guider Peter sur un autre chemin de développement de sa personnalité ?

P.S. : C'est moi ou le site était en panne hier ?

 
Алексей Барбашин:

Nikolaï, pensez-vous qu'il vaut la peine d'abandonner la tentative d'orienter Peter vers une autre façon de développer sa personnalité ?

Il s'agit de diriger le projet d'une manière alternative. Son code est plus facile à réécrire que le mien).
Il existe une idée selon laquelle nous devrions créer une classe de base CElement, et à partir de celle-ci - héritiers - tous les types d'éléments.

Si l'on considère la logique des liens entre les éléments, c'est exact, mais si l'on considère la structure des éléments, alors les classes de base devraient être CRec, CImage, CText.
Tout dépend donc du choix du critère de classification.

Nous pouvons classer les éléments soit en fonction de leur structure physique, soit en fonction de leur type. Il existe de nombreuses variantes de la classification et chacune offre une structure de bibliothèque de classe différente. Il est nécessaire de choisir un critère et de le suivre.
 
Реter Konow:
Il s'agit d'orienter le projet dans une autre direction. Son code est plus facile à réécrire que le mien).
L'idée est de créer une classe de base CElement, et à partir de celle-ci, tous les types d'éléments en tant que descendants.

Si nous considérons la logique des relations entre éléments, c'est correct, mais si nous considérons la structure des éléments, alors les classes de base devraient être CRec, CImage, CText.
Tout dépend donc du choix du critère de classification.

Nous pouvons classer les éléments soit en fonction de leur structure physique, soit en fonction de leur type. Il existe de nombreuses variantes de la classification et chacune offre une structure de bibliothèque de classe différente. Il est nécessaire de choisir un critère et de le suivre.

Je pense qu'il est préférable d'examiner l'expérience des ancêtres des interfaces et des contrôles. Je ne vois pas l'intérêt de réinventer la roue ou de compliquer les choses à l'excès. Beaucoup de choses ont été inventées avant nous et nous avons juste besoin de les porter sur mql.

Je ne me suis pas contenté de demander ce que ces contrôles ou ces contrôles ont en commun.

Maintenant, je vous demande encore une chose : Peter, postez ici des images des contrôles suivants - bouton avec icône et légende, étiquette de texte avec icône et légende, case à cocher, bouton radio, combobox, panneau, champ de saisie.

 
Алексей Барбашин:

Je pense qu'il est préférable de se pencher sur l'expérience des ancêtres de la conception d'interfaces et de contrôles en la matière. Il ne sert à rien de réinventer la roue ou de compliquer les choses à l'excès. Beaucoup de choses ont été inventées avant nous et nous avons juste besoin de les porter sur mql.

Je n'ai pas seulement demandé ce que les contrôles ont en commun.

Maintenant, je vais vous demander encore une chose : Peter, mettez ici des images des contrôles suivants - bouton avec icône et étiquette, étiquette de texte avec icône et étiquette, case à cocher, bouton radio, combobox, panneau, champ de saisie.

J'ai l'expérience d'un ancêtre, mais lequel fonctionnerait ? Par exemple, la bibliothèque du personnel ou la bibliothèque d'Anatoly offrent une structure de classe toute prête, mais ce sont des BIBLIOTHÈQUES. Autrement dit, les éléments sont créés en appelant les bonnes fonctions. Je dispose d'un langage de balisage, ce qui signifie que vous pouvez écrire l'interface graphique dans un fichier séparé. C'est une technologie complètement différente. Si vous ne tenez pas compte de cela, vous pouvez créer une bibliothèque ordinaire, dont nous avons déjà deux dans MQL. Vous n'en avez pas besoin d'un autre. Il ne s'agit pas de savoir s'ils sont sur la toile ou non, mais de savoir s'il est facile de créer une interface sur eux.

Des photos seront affichées.
 
Реter Konow:
L'expérience de l'ancêtre est là, mais lequel des deux fera l'affaire ? Par exemple, la bibliothèque du personnel ou la bibliothèque anatolienne offrent une structure de classe toute prête, mais ce sont des BIBLIOTHÈQUES. Autrement dit, les éléments sont créés en appelant les bonnes fonctions. Je dispose d'un langage de balisage, ce qui signifie que vous pouvez écrire une interface graphique dans un fichier séparé. C'est une technologie complètement différente. Si vous ne tenez pas compte de cela, vous pouvez créer une bibliothèque ordinaire, dont nous avons déjà deux dans MQL. Vous n'en avez pas besoin d'un autre. Il ne s'agit pas de savoir s'ils sont sur la toile ou non, mais de savoir s'il est facile de créer une interface sur eux.

Je vais poster des photos.

Il s'agit des deux. Il s'agit de savoir sur quoi le dessin est fait, et s'il est facile de construire une interface à partir de ce dessin.

De facto, tout est une bibliothèque. Par exemple, vous avez créé un constructeur de boîte de dialogue , mais sur la base de quoi ? Sur la base des mêmes contrôles de la bibliothèque. Ainsi, pour qu'un utilisateur puisse déposer quelque chose sur un formulaire, il doit fournir ces mêmes contrôles, c'est-à-dire qu'il peut les choisir parmi ... bibliothèque. C'est pour ça que ça s'appelle comme ça. Ensuite, vous générez un fichier de balisage basé sur celui-ci, que l'utilisateur peut utiliser dans mql, mais au départ, le fait est que l'utilisateur sélectionnera les contrôles dans la liste disponible. C'est la même bibliothèque, seulement "vue de côté".