Discusión sobre el artículo "Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte I): Concepto, organización de datos y primeros resultados" - página 2

 
Sergey Voytsekhovsky:
Artem, no prestes atención a los neodevotos, por favor. Déjalos gritar. Estás haciendo un buen trabajo. Tengo una pregunta: ¿hay al menos un calendario aproximado para los próximos artículos de esta serie? Por ejemplo: una vez a la semana, una vez al mes, trimestralmente .... ???

El segundo artículo está listo, a la espera de su publicación. El tercero está en desarrollo. No pretendo retrasar la publicación de nuevas partes, ya que todas están interconectadas y cada una de ellas es una continuación y ampliación de las anteriores. Tengo previsto publicar una serie de artículos. Como resultado, habrá una biblioteca, habiéndola conectado, el usuario obtendrá inmediatamente una colección automatizada de los datos necesarios, una amplia gama de herramientas para utilizar los datos disponibles en sus programas. Se dará y explicará el acceso a los métodos necesarios de las clases de la biblioteca, o el simple uso habitual de las funciones habituales para aquellos que no estén familiarizados con las clases - habrá un gran conjunto de funciones de la biblioteca, así como el acceso a los datos por medio de estructuras. El usuario no tendrá que recuperar ni procesar los datos: sólo tendrá que solicitar los datos que necesite al estilo "pregunta-respuesta-aplicación".

Por ejemplo: consulta: ¿cuándo se borró tal orden pendiente? respuesta: entonces. O bien: consulta: necesita datos sobre la última posición cerrada, respuesta: se devuelve una estructura rellena con todos los datos de la posición. O bien: se necesita borrar una orden pulsada por el usuario, la respuesta es que la orden fue borrada. O: necesitamos un ticket de una posición con el precio abierto más pequeño sobre el símbolo EURUSD y con el magick 12345, la respuesta será devuelta el precio de esta orden y la estructura rellenada con todos los datos de esta posición.

Las consultas, por supuesto, se realizan mediante funciones. Como ejemplo (hipotético): GetLastClosePosition() - devuelve una estructura con campos rellenos sobre la última posición cerrada, GetLastClosePosition("USDCAD") - devuelve una estructura con campos rellenos sobre la última posición cerrada en el símbolo USDCAD, etc.

Pero será posible dirigirse directamente a las clases y obtener punteros a listas, de las que tomar los datos necesarios de forma independiente.

Y así sucesivamente, etc., etc.

 
Artyom Trishkin:

Por ejemplo: consulta: ¿cuándo se borró tal orden pendiente? respuesta: entonces. O: consulta: necesitamos datos sobre la última posición cerrada, la respuesta: se devuelve una estructura rellena con todos los datos de la posición. O bien: se necesita borrar una orden pulsada por el usuario, la respuesta es que la orden fue borrada. O: necesitamos una entrada de una posición con el precio abierto más pequeño sobre el símbolo EURUSD y con el magick 12345, la respuesta será devuelta el precio de esta orden y la estructura rellenada con todos los datos de esta posición.

Es caro devolver la estructura. Por la misma razón CopyRates es varias veces más caro que CopyClose.

 
fxsaber:

Es caro devolver una estructura. Por la misma razón CopyRates es varias veces más caro que CopyClose.

Pues bien, la devolución de estructuras está prevista como una funcionalidad adicional a petición del usuario, por pura comodidad. Se verá más adelante. En cualquier caso - la biblioteca se crea "sobre la marcha" con una descripción de los pasos de su creación, con la realización de cambios. Así que más adelante se verá cómo hacer "no es caro".

Sin embargo, ya lo he hecho. Ahora sólo estoy describiendo de una manera estructurada, mientras que al mismo tiempo poner todo en orden para mí.

Y en general - estoy acostumbrado a hacer "de lo simple a lo complejo", pero pensando de antemano "lo que sigue" - a fin de no quedarse atascado en la necesidad de revisar el concepto, de la que nadie es inmune.

 
Artyom Trishkin:

No puedo imaginar nada más conveniente que lo que los desarrolladores han ideado en MT4.

 
¿Qué quiere decir con "caro"?
 
Tal vez no entiendo algo, pero hasta ahora la forma propuesta de localización (traducción de mensajes a otros idiomas) parece errónea. El código fuente de la librería no debería cambiar dependiendo de la localización, ¿y ahora el ruso está escrito ahí como el principal? ¿Cómo se supone que vamos a añadir, por ejemplo, alemán o francés?
 
Sergey Voytsekhovsky:
¿A qué se refiere con "costoso"?

Costoso en términos de consumo de recursos

 
Stanislav Korotky:
Tal vez no entiendo algo, pero hasta ahora la forma propuesta de localización (traducción de mensajes a otros idiomas) parece errónea. El código fuente de la librería no debería cambiar dependiendo de la localización, ¿y ahora el ruso está escrito ahí como el principal? ¿Cómo se supone que se puede añadir, por ejemplo, alemán o francés?

Hasta ahora

 
Es bueno ver un intento de acercar las plataformas creando funcionalidades multiplataforma. La dirección correcta.
 
Artyom Trishkin:

Por ahora

Si lo dejas así por ahora, tendrás que cambiar mucho código más adelante, si rediseñas la localización. ¿Cuál es la dificultad de conectar cadenas de bibliotecas de "recursos" o cabeceras a la vez?