Realización de un proyecto crowdsourced en Canvas - página 3

 
o_O:

Yo diría que es una belleza).

La velocidad es muy buena. Todo es bastante adecuado en términos de tiempo de renderizado y control.

Ya ves el problema: todo esto es genial y estupendo, pero no toda la gente puede escribir como en los códigos adjuntos.

Estaría encantado de participar, pero no tengo conocimientos, y ellos no, no porque no aprenda y no quiera aprender no lo hacen, porque no está en ningún sitio para enseñar bien.

He planteado muchas veces la cuestión de una buena formación competente, cómo programar correctamente y cómo no hacerlo, qué es la POO y cómo utilizarla.

Ahora sólo los que han estudiado programación en institutos y tienen muchos conocimientos y entienden mucho pueden responder a tu llamada, pero ¿cuántos ves?

Por ejemplo, yo no entiendo nada de esas cosas:

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: правомерно

Muéstrame en la documentación o en cualquier otro lugar donde pueda aprender y entender dónde aplicar esto y cómo entenderlo en general ...

Quieres escribir cosas chulas y útiles y eso está muy bien, pero ¿quién lo va a escribir tienes preparado? ¿Enseñaste a la gente? O de nuevo una buena idea morirá porque 1,5 personas participarán en ella...

Pensando en voz alta, el proyecto más necesario y requerido sería un proyecto para enseñar a programar (bien, simple, útil, competente) desde los fundamentos hasta los ejemplos como mostré arriba. Lo haría pero no soy profesional, ¡no sé cómo hacerlo bien!

Y la utilidad para todos será cien mil veces mayor que la del proyecto en el que 1,5 listillos se inventan cosas chulas (en su opinión)...

 
o_O:
hmm, ¿cuál es el problema con la edición?
¿El problema principal y más importante es la cadena de entrada limitada o ha cambiado algo?
 
Vladimir Pastushak:
Quieres escribir cosas chulas y útiles y eso está muy bien, pero ¿quién lo va a escribir tienes preparado? ¿Enseñaste a la gente? O de nuevo, una buena idea morirá porque 1,5 personas participarán en ella ...

A veces basta con 0,5 personas, si es un genio del desarrollo )


Pensando en voz alta, el proyecto más necesario y requerido sería un proyecto de formación...

ese es un tema para otro hilo.

Y el beneficio para todos será cien o mil veces mayor que el de un proyecto en el que 1,5 listillos escriban cosas chulas (en su opinión)...


no será una cosa genial. sólo será una cosa imprescindible. y no está hecho para gente inteligente, sino para gente como tú, para los autónomos, para el mercado.
 
Zorro:
El problema más importante y principal es la cadena de entrada limitada o ¿ha cambiado algo?

(-) para no utilizar un objeto gráfico de MT.

Tenemos que hacer nuestra propia edición, con el blackjack, etc.
Dibujado en un mapa de bits genérico de la aplicación,

 

Una etiqueta y un paseo con una cadena ilimitada ya es un plus en sí mismo )

Y sí, es Anatoly quien debe estar en el hilo.

 

Ahora que ya tenemos más o menos claro lo que hay que hacer, sugiero añadir una cláusula básica de arquitectura de clases a la primera tarea (para todos los futuros controles, no sólo para los botones)

----
En general, veo todo el proyecto en la siguiente dirección

1. Vamos a escribir un botón y renderizarlo en el lienzo. Con sus eventos. Por lo tanto, entramos en el principio y probamos el modelo de gui de mapa de bits.

2. Hacer una clase que combine un grupo de elementos de la GUI con eventos (esto es para tener en cuenta el zorder al renderizar y los eventos)

Son dos pasos complicados, esperemos que haya unas cuantas opciones, elegiremos una.
Después de eso, ejecutaré el proyecto de código abierto en bitbucket. Y pasar a la tercera etapa.

3. Cuando la arquitectura se aclare, entonces todo el mundo podrá ya tomarla y hacer controles básicos: Edit, Static, Droplist, etc. Por ahora me limito a estos elementos, ya que serán suficientes para el primer trabajo práctico.

No discuto que se necesiten algunos ajustes arquitectónicos en la fase de desarrollo del control. Esto se resolverá en un par de iteraciones

 
o_O:

no será una cosa genial. será simplemente una cosa imprescindible. y no está hecho para gente inteligente, sino para gente como tú, para los autónomos, para el mercado.

1 - No me fío de las cosas/códigos que no entiendo

2 - Que yo recuerde Kanvas no funciona en el probador de estrategias, lo que para muchos es una gran desventaja, sobre todo cuando se prueban productos de pago del mercado, simplemente no van a funcionar.

3 - Le deseo buena suerte...

ZS: Y no entiendo qué significa"debe tener"...

 
Vladimir Pastushak:
...

ZS: Y no entiendo qué significa"debe tener"...

Sólo "hay que tener" ...
 
Комбинатор:

Una etiqueta y un paseo con una cadena ilimitada ya son un plus en sí mismos )

Y sí, se supone que Anatoly está llamado al tema

Originalmente planeaba desarrollar mi biblioteca en la misma dirección, como se sugiere en este hilo. Empecé a propósito con primitivas estándar simples, para trabajar el esquema, porque al principio es más fácil. Ahora prácticamente todo el material se ha publicado en artículos. La primera etapa en relación con mi plan original está casi terminada. Habrá un artículo principal más, así como un par de artículos con actualizaciones a petición de los usuarios interesados y también he hecho algunas optimizaciones de código y esquemas, lo que ha reducido un poco el consumo de recursos de la CPU.

Actualmente, el esquema es como el que se muestra en la figura siguiente. Esta no es la versión final y se modificará repetidamente durante el desarrollo de la biblioteca. Pero tampoco excluyo los cambios fuertes, si se encuentra una variante que da ventajas y nuevas características que no están disponibles en la versión actual.

Todo el material publicado está disponible y usted es libre de utilizarlo en sus propios proyectos o versiones de bibliotecas similares. Para eso se publicó todo. A medida que se publica cada parte de la serie, se puede seguir la evolución de la biblioteca.

Tenía previsto implementar todos los controles completamente dibujados en el lienzo (algunos de ellos ya han sido implementados). Esta es la segunda etapa de desarrollo de la biblioteca. Es decir, para cada control habrá un objeto independientede tipo OBJ_BITMAP_LABEL. El número de objetos gráficos será mucho menor, lo que a su vez también reducirá los recursos de la CPU. De nuevo, todo depende de cómo se aplique. Siempre hay algunas variantes. Es aconsejable probarlas todas, si es la primera vez en este entorno y no se sabe con seguridad que la opción elegida es inequívocamente la mejor.

Y sólo después de eso el plan era pasar a la tercera etapa, cuando todos los elementos de la interfaz gráfica debían dibujarse en el mismo kanvas. En cuanto a las bibliotecas para la creación de interfaces gráficas, son de primera categoría. Y es un trabajo muy grande para una sola persona. Abstracción total e inmersión en el proyecto. Máxima concentración durante un largo periodo. Y creo que si tienes planes de convertirte en un programador profesional, tienes que pasar por esto. La cuestión es que esta experiencia puede resultar útil en cualquier entorno de programación más adelante. Pero si se reúne un equipo, quizás el desarrollo pueda completarse mucho más rápido.

Creo que este proyecto es muy interesante y útil, tanto para los demás como para mí. Con gran interés observaré el desarrollo y estudiaré los materiales publicados aquí. En cualquier caso, seguiré desarrollando mi versión de la biblioteca y publicando artículos. Me gusta el formato en el que estoy trabajando actualmente. Que sea mi participación. Las ideas y los códigos estarán a disposición de todo el mundo y se podrán utilizar. Tengo requisitos muy estrictos para el diseño y la descripción del código. Todo debe ser detallado, ordenado, presentado en esquemas, comprensible para todos y perfecto en la medida de lo posible. De lo contrario, nada funcionará y se corre el riesgo de terminar en la nada, como ha sucedido repetidamente en este foro para muchas ideas diferentes y muy interesantes, aunque las discusiones involucraron a los desarrolladores más profesionales presentes en este sitio. Espero que no sea así y consigamos una buena biblioteca para crear interfaces gráficas para los terminales MetaTrader, y el interminable periodo de su ausencia se olvide como un mal sueño.

 
o_O:

Saludos codificadores.

Hay una tarea interesante de hacer algo realmente útil...

----

Por lo tanto, la tarea uno y básica.

1. Necesitamos hacer una clase de botón (digamos GButton, prefijado con G para no confundir con los existentes).

Creo que después de los artículos de Anatoly volver a crear los mismos huevos de perfil es un pasatiempo cuanto menos extraño. Los gráficos no son en absoluto un tema candente para la MT.

  • Los usuarios no necesitan interfaces gráficas. En consecuencia, es imposible controlar la interfaz gráfica de usuario y su desarrollo nunca será rentable.
  • Si quieres aumentar las competencias, es mejor que consigas inmediatamente un trabajo en algún lugar de menor categoría. Así, al menos, empezarás a ganar algo de dinero desde el principio y aumentarás tus habilidades poco a poco.
  • Un público objetivo demasiado reducido. ¿Quién necesita las bibliotecas? - Absolutamente nadie, excepto un puñado de programadores, y hace tiempo que han escrito todas las bibliotecas que necesitan. Por ejemplo, tengo dos bibliotecas gráficas propias.

No quiero dar lecciones a nadie aquí, pero puedo daros un consejo: chicos, oled la pólvora. Aprende a trabajar con los usuarios. Aprende su psicología. Aprende a controlar sus ideas. Entonces, baja rápidamente a la tierra y razonarás de una manera completamente diferente. Yo también creí alguna vez en algunas ideas especiales y hermosas, pero todas estas tonterías, no funcionan. Lo que estáis discutiendo aquí no le sirve a nadie más que a vosotros.