Fazendo um projeto de crowdsourced em Tela - página 41

 
Реter Konow:

Nikolai, sua opinião é sempre interessante. Terminei o projeto gráfico e só quero entregá-lo às pessoas. Ainda há algum tempo e qualquer um testará o motor e o projetista. Então, vou continuar com desenvolvimentos completamente diferentes.

Alexey decidiu me ajudar a traduzir a matriz para o formato padrão OOP. Eu não me importo, mas francamente falando - duvido muito. Para ser mais exato, eu sei com certeza que é quase impossível. Levaria um ano até que um análogo equivalente fosse criado. Do meu ponto de vista - só faz sentido - dar às pessoas a oportunidade de editar e desenvolver o projeto. Se de repente eu parasse, outros poderiam continuar.

O principal é tornar tudo isso útil para a comunidade).

Acho que já é hora de virar a página e seguir em frente. Boa experiência adquirida.
Mas é claro que ninguém vai desenvolver seu projeto. Você tem que ser realista.

 
Nikolai Semko:

Provavelmente já passou da hora de virar a página e seguir em frente. Uma boa experiência foi adquirida.
Mas é claro que ninguém vai desenvolver seu projeto. Você tem que ser realista.

Eles não se desenvolverão, mas se aplicarão.

 
Nikolai Semko:

Piotr, sua criação parece mais uma linguagem de pedidos do que uma linguagem de marcações.
E, como sabemos, a MQL5 tem sido capaz de trabalhar recentemente com bancos de dadosSQLite.

O que é um banco de dados? É um conjunto de tabelas e as relações entre elas.

E a linguagem de consulta (SQL - Structured QueryLanguage) está trabalhando com estas tabelas (criar, modificar, consultar e acessar, excluir).
Não vou dar nenhum conselho. Eu já descobri que você é o tipo de pessoa que não precisa do conselho de ninguém.
Apenas informações para reflexão.
E é caro dar uma solução para um formato que já foi padronizado e desenvolvido.
Neste momento estou estudando Java em sua interação com um banco de dados (MySQL). Java teve que criar ferramentas especiais para isto (JPA, Hibernate, DAO Design Pattern). Este tópico é muito próximo ao seu. Estas ferramentas são essencialmente classes - tradutores de Java para SQL.
Minha opinião é que é uma melhor maneira de começar desde o início após uma prática bem sucedida com OOP e SQL. E a linguagem de marcação XML também pode vir a ser útil.

Vai ser útil! As soluções multiplataforma são executadas em uma descrição declarativa da WPF, atividades em andróide,Xamarin, páginas da web no final - todas utilizam XML.

"Java teve que criar ferramentas especiais para isto" - qualquer adição e ferramentas são criadas para facilitar o acesso, acesso nativo ou até mesmo a ligação de objetos, onde a leitura de dados de um banco de dados e a adição de dados a ele é feita sem chamar consultas do desenvolvedor final. É claro que tudo funciona em consultas, só que tudo está profundamente escondido em complementos.

E com Peter tudo dará certo se ele tiver a vontade de fazê-lo. Até agora ele está fora de seu hábito teimoso de tentar "empurrar" seu modelo. Eu, por outro lado, estou tentando abstraí-lo de sua matriz e passar ao raciocínio geral. Enquanto ele estiver fixado em sua matriz, é difícil raciocinar com sensatez. Mas as coisas estão indo muito bem até agora.

Nikolay, espero que de vez em quando você se junte a nossa discussão.

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

...

E tudo dará certo com Peter, se ele tiver vontade de fazer isso. Até agora, ele tem o hábito de tentar "empurrar" seu modelo. Estou tentando abstraí-lo de sua matriz e passar ao raciocínio geral. Enquanto ele estiver fixado em sua matriz, é difícil raciocinar com sensatez. Mas as coisas estão indo muito bem até agora.

...

Eu não estou mais tentando empurrar nada). Apenas, não tenho idéia de como traduzir tudo isso em aulas. Agora estou totalmente concentrado na depuração, assim que a publicar, você e outros terão uma idéia melhor do que é. Então talvez haja algum tipo de esquema. Talvez o coletivismo ainda seja recompensado nesta linha).
 
Алексей Барбашин:

Nikolai, espero que você participe da conversa de vez em quando.

Não me importo, mas, para ser honesto, nem sei como posso ajudar. Eu já disse tudo isso muitas vezes. Peter só precisa seguir seu próprio caminho.

Ele é um homem auto-suficiente e não precisa de clientelismo, pois é seu próprio patrão. Embora às vezes você tenha a sensação de que ele precisa de um patrocínio, mas é apenas uma ilusão, um truque, um tipo de isca :))

 
Nikolai Semko:

Não me importo, mas, para ser honesto, nem sei como posso ajudar. Tudo já foi dito muitas vezes. Peter só precisa seguir seu próprio caminho.

Ele é um sujeito auto-suficiente e não precisa de supervisão, pois é seu próprio patrão. Embora às vezes você tenha a sensação de que ele precisa de um patrocínio, mas é apenas uma ilusão, um tipo de sedução :)))

Nikolaj, você acha que vale a pena deixar a tentativa de guiar Peter em um caminho alternativo de desenvolvimento de sua personalidade?

P.S.: Era só eu ou o local estava em baixo ontem?

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

Nikolai, você acha que vale a pena deixar a tentativa de orientar Peter para uma maneira alternativa de desenvolver sua personalidade?

Trata-se de dirigir o projeto de uma forma alternativa. Seu código é mais fácil de reescrever do que o meu).
Há uma idéia de que devemos fazer uma classe base CElement, e dela - herdeiros - todos os tipos de elementos.

Se considerarmos a lógica das ligações entre elementos, isso é certo, mas se considerarmos a estrutura dos elementos, então as classes base devem ser CRec, CImage, CText.
Portanto, tudo depende da escolha do critério de classificação.

Podemos classificar de acordo com a estrutura física dos elementos ou de acordo com seus tipos. Há muitas variantes de classificação e cada uma oferece uma estrutura de biblioteca de classe diferente. É necessário escolher um critério e segui-lo.
 
Реter Konow:
Trata-se de apontar o projeto em uma direção alternativa. Seu código é mais fácil de reescrever do que o meu).
A idéia é fazer uma classe base CElement, e a partir dela, todos os tipos de elementos como descendentes.

Se considerarmos a lógica das relações entre elementos, isto é correto, mas se considerarmos a estrutura dos elementos, então as classes base devem ser CRec, CImage, CText.
Portanto, tudo depende da escolha do critério de classificação.

Podemos classificar de acordo com a estrutura física dos elementos ou de acordo com seus tipos. Há muitas variantes de classificação e cada uma oferece uma estrutura de biblioteca de classe diferente. É necessário escolher um critério e segui-lo.

Acho que é melhor olhar para a experiência dos antepassados das interfaces e controles. Não vejo a utilidade de reinventar a roda ou de complicar demais as coisas. Muitas coisas já foram inventadas antes de nós e só precisamos transportá-las para o mql.

Eu não perguntei apenas o que estes ou aqueles controles têm em comum.

Agora eu pergunto mais uma coisa: Peter, poste aqui fotos dos seguintes controles - botão com ícone e legenda, etiqueta de texto com ícone e legenda, caixa de seleção, botão de rádio, combobox, painel, campo de entrada.

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

Acho que é melhor olhar para a experiência dos antepassados do design de interface e controle neste assunto. Não vale a pena reinventar a roda ou complicar demais as coisas. Muitas coisas já foram inventadas antes de nós e só precisamos transportá-las para o mql.

Eu não perguntei apenas o que estes ou aqueles controles têm em comum.

Agora vou perguntar mais uma coisa: Peter, coloque aqui fotos dos seguintes controles - botão com ícone e etiqueta, etiqueta de texto com ícone e etiqueta, caixa de seleção, botão de rádio, combobox, painel, campo de entrada.

Eu tenho a experiência de um antepassado, mas qual deles trabalharia? Por exemplo, a biblioteca do pessoal, ou a biblioteca de Anatoly oferece uma estrutura de classe pronta, mas estas são BIBLIOTECAS. Ou seja, os elementos são criados chamando as funções corretas. Eu tenho uma linguagem de marcação, o que significa que você pode escrever uma GUI em um arquivo separado. Esta é uma tecnologia completamente diferente. Se você não levar isso em conta, você pode criar uma biblioteca regular, da qual já temos duas na MQL. Você não precisa de outro. Não se trata de estarem ou não na tela, mas de como é fácil criar uma interface sobre eles.

As fotos serão publicadas.
 
Реter Konow:
A experiência dos antepassados está lá, mas qual deles servirá? Por exemplo, a biblioteca do pessoal, ou a biblioteca anatólica, oferece uma estrutura de classe pronta, mas estas são LIBRARIES. Ou seja, os elementos são criados chamando as funções corretas. Eu tenho uma linguagem de marcação, o que significa que você pode escrever a GUI em um arquivo separado. Esta é uma tecnologia completamente diferente. Se você não levar isso em conta, você pode criar uma biblioteca regular, da qual já temos duas na MQL. Você não precisa de outro. Não se trata de estarem ou não na tela, mas de como é fácil criar uma interface sobre eles.

Vou postar fotos.

É sobre ambos. É sobre o que o desenho é feito, e como é fácil construir uma interface a partir dele.

De fato, tudo é uma biblioteca. Por exemplo, você criou um construtor de caixas de diálogo , mas com base em quê? Com base nos mesmos controles de biblioteca. Assim, para que um usuário possa soltar algo em um formulário, ele tem que fornecer esses mesmos controles, ou seja, ele pode escolhê-los de ... biblioteca. É por isso que é chamado assim. Em seguida, é gerado um arquivo de marcação com base nele, que o usuário pode usar em mql, mas inicialmente o fato é que o usuário selecionará os controles a partir da lista disponível. É a mesma biblioteca, apenas "vista de lado".

Razão: