Mi enfoque. El núcleo es el motor. - página 106

 
Aliaksandr Hryshyn:
¿Por qué el 3D? Primero hay que averiguar el objetivo. ¿Gráficos en 3D? Cosas dudosas. ¿Para qué sirve el 3d?

¡Para que los beneficios sean mayores, y la rentabilidad del comercio en general)!

 
Реter Konow:

Entonces se abre el mundo del 3D. La tecnología es un poco de cabeza, pero lo haré. Las formas tridimensionales se retorcerán y girarán.

Peter, te has vuelto a ir por las ramas. Concéntrese en la funcionalidad actual, de lo contrario su motor nunca llegará a la versión. Despliegue la funcionalidad básica y luego implemente sus nuevas ideas: 3d, 4d, 6d, Power Surround, etc.

 
Aliaksandr Hryshyn:
¿Por qué el 3D? Primero hay que averiguar el objetivo. ¿Gráficos en 3D? Cosas dudosas. ¿Para qué sirve el 3D?

El mercado existía antes de que existieran los ordenadores. Imagina que te transportas en una máquina del tiempo a los años 20 en Estados Unidos. Conociendo la electrónica moderna y la programación, decidiste construir un ordenador, escribir una plataforma y vender robots de trading a todo el mundo.

Si te hubieras dirigido a los comerciantes con una descripción de lo que querías crear, te habrían considerado un loco. Nadie entendería lo que estás diciendo. Ni una sola palabra. Porque entonces no existían esos conceptos. No se podía explicar nada a nadie. Hasta mediados de los años 40. Luego llegó la máquina de calcular de Alan Turing, y contarle tus planes te habría dado un mínimo de comprensión. Más cerca de los años 80, tendrías una comprensión aún mejor...

Hay que entender que el beneficio del mercado es una ficción. El verdadero beneficio es... conquistando nuevos territorios.. En este caso, elterritorio es MQL-tecnologías. Cuanta más tecnología cree, más territorio conquistaré. Y ahí, en ese territorio, puedes encontrar tus minas de oro....

Así que me esfuerzo por hacer todo lo que puedo.

 
Vasiliy Sokolov:

Peter, te has vuelto a ir por las ramas. Concéntrese en la funcionalidad actual, de lo contrario su motor nunca llegará a la versión. Despliegue la funcionalidad básica y luego implemente sus nuevas ideas: 3d, 4d, 6d, Power Surround, etc.

En general, me queda una tarea por implementar para llegar a la liberación: un nuevo mecanismo de comunicación entre el motor y el EA.

El resto podría tardar meses en concretarse. Corregir errores, añadir funciones...

 
Реter Konow:

Para el lanzamiento, básicamente me queda una tarea por implementar: un nuevo mecanismo de comunicación entre el motor y el EA.

El resto podría tardar meses en terminarse. Corregir errores, añadir funciones...

Así que concéntrese en la conexión entre el motor y el EA. Deja otras tareas como 3d, 4d, 6d para más adelante. Ahora mismo, el objetivo es la liberación. Todo lo demás, después.

 
Vasiliy Sokolov:

Así que concéntrese en vincular el motor con el EA. Deja otras tareas como 3d, 4d, 6d para más adelante. Ahora mismo, el objetivo es la liberación. Todo lo demás es para después.

Si tú lo dices, así es. El primer objetivo es despertar el interés del público. Había que hacer un montón de cosas interesantes e inusuales para conseguirlo. Si el público ya está interesado, hay que pasar al segundo objetivo: el lanzamiento y la distribución.

 
Реter Konow:

Así que me propongo hacer todo lo posible.

El enfoque es extraño).

 
Реter Konow:

Chicos, con todo el respeto, programad como queráis. Programaré a mi manera.

La POO es necesaria para un equipo de programadores que trabajan en un proyecto que está más allá de las capacidades de una sola persona.

La animación simple no requiere OOP. Además, cuando se caza una liebre, no es necesario llevar un bazooka)).

Te equivocas, Peter.

La programación orientada a objetos es necesaria para cualquier programador que no pueda recordar el propósito y las relaciones de unos cuantos miles de objetos (yo no puedo, estoy desprovisto de cerebro).

Puedes tenerlo todo en mente fácilmente - por eso no necesitas OOP. Sólo gestos adicionales, y usted es comprensible.

Pero no todo el mundo es un titán de la memorización. Yo, por ejemplo, ya no recuerdo las sutilezas de lo que escribí hace unos días. Y lo que escribí hace seis meses, si es necesario, me veo obligado a resolverlo desde el principio. Por eso la encapsulación, el ocultar las implementaciones, el cortar el acceso a todo, el minimizar las variables globales es algo bueno para mí. Todo esto hace que no me "meta" donde no debo. Sin embargo, esto se debe únicamente a mi mala memoria: no puedo recordar mil cosas pequeñas.

 
Vitaly Muzichenko:

¡Para que el beneficio sea mayor, y la rentabilidad del comercio en su conjunto) !

¡Exactamente!

Asesor Experto que muestra los resultados en forma de una superficie tridimensional a la manera del gráfico tridimensional en MetaTrader - ¡inmediatamente se vuelve mucho más rentable!

Por lo tanto, no hay que molestar a Peter para que forme a los nuevos operadores. En realidad, para aquellos que saben programar, pero que prefieren operar a mano, todos los desarrollos de Peter son muy interesantes. Sin embargo, de alguna manera no veo a esas personas, pero Pedro dice que pueden ser alimentadas, creadas. Obviamente, mostrando la ventaja de un comercio tan manual.

Sólo es cuestión de mostrar esta ventaja. Si he visto los controladores visuales de Peter y tengo una idea de lo que son, entonces no he notado las ventajas del comercio manual.

Bueno, entonces... Estamos esperando.

 
Реter Konow:

Esta animación no se puede implementar con CCanvas. No hay ningún mecanismo para conectar un lienzo con diferentes recursos. Y sin ella, hay que redibujar el contenido original del kanvas en cada cambio de animación. De lo contrario, obtendrá una imagen muerta.

El rediseño lleva tiempo y todo empieza a ralentizarse. Tuve que implementar mi propio mecanismo de reconexión de canva a dos recursos a su vez y como resultado aceleré la animación muchas veces.

Además, la clase CCanvas está diseñada para trabajar con un solo lienzo. Y puedo dibujar en diferentes lienzos al mismo tiempo.

Para eso sirve el OOP.

No hay que "arrancar" funciones de la clase. Tienes suerte de que las funciones arrancadas no "tiren" de nada. Por cierto, gracias a la encapsulación y a la ausencia de variables globales. Si esta clase no estuviera escrita en estilo OOP, no habrías podido arrancar este código tan fácilmente.

Pero ese no es el punto principal. Si necesitas organizar varias instancias del lienzo, crea varias instancias del objeto. Si necesitas trabajar con los "internos" del objeto, heredas de él y trabajas.


Puedes hacerlo como lo haces. Pero en este caso el riesgo de encontrar un error es mucho mayor porque no has escrito la clase en sí y no conoces todos los detalles de su funcionamiento. "Arrancar" el código de una clase es una práctica muy peligrosa. Imagínese que tomo un par de funciones de su biblioteca: ¿cree que lo habría conseguido? Poco probable, porque con las funciones tendrías que "arrastrar" todas las variables globales, de las que tienes bastantes. Y los enlaces entre objetos internos, no es que los vaya a tener en cuenta todos, no tengo suficiente memoria para ello.

Pero, tienes suerte. Su memoria es excelente. Te envidio.