Discusión sobre el artículo "Documentación generada automáticamente para el código de MQL5"

 

Artículo publicado Documentación generada automáticamente para el código de MQL5:

La mayoría de desarrolladores de código Java estarán familiarizados con la documentación generada automáticamente que puede obtenerse con JavaDocs. La idea es añadir comentarios al código de forma semiestructurada para que pueda ser extraída en forma de una archivo de ayuda por el que sea fácil navegar.

El mundo de C++ tiene también una serie de autogeneradores de documentación, siendo líderes SandCastle y Doxygen, ambos de Microsoft. He decidido ver que tal puede Doxygen generar documentación en MQL5, que es en esencia un subconjunto personalizado de C++. Para mí, este es un paso importante en la madurez de MQL5, ya que la complejidad del lenguaje es capaz de mejorar fácilmente algunas librerías de clases muy grandes.

El experimento funcionó muy bien y creo que la documentación de ayuda que ofrece Doxygen a partir del código MQL5 añadirá una gran cantidad de valor a este.

Настройка Doxygen - Wizard 1

Autor: Paul

 

¡Bien hecho! Aunque sólo es adecuado si usted vende bibliotecas MQL5 :(

 

Buen artículo.

 
¿Puedo usarlo con MQL4? Es muy parecido a C después de todo, y se supone que doxygen también lo soporta.
 
gordon   :
¿Puedo usarlo con MQL4? Es muy parecido a C después de todo, y se supone que doxygen también lo soporta.

Sí, funciona gordon. Hay una opción en la segunda pantalla del Modo Asistente para "optimizar para salida C o PHP". Obviamente todas las funciones MQL4 son globales, por lo que no hay ventajas de la agrupación de clases MQL5.

He adjuntado una captura de pantalla a continuación de algunos de salida para LibOrderReliable utilizando la opción C. LibOrderReliable es una envoltura muy bien documentado para las funciones de comercio MQL4 para hacerlos más a prueba de fallos. Para tener la documentación aparece en la salida Doxygen, los comentarios en el código necesitaría ajustes similares a los que hice en el código MQL5.

Paul

http://p aulsfxrandomwalk.blogspot.com/

 

Ah, ya veo lo que quieres decir sobre las clases. Así que tal vez no realmente vale la pena usarlo para MQL4.

 
Gracias por el artículo. Justo lo que necesitaba. ¿Y tal vez hay generadores con estilo msdn?
 

Es importante especificar la codificación correcta al crear documentación para programas que contengan comentarios en ruso.

De lo contrario puede obtener cuadrados en lugar de comentarios en ruso:

Por defecto en Doxygen en las opciones del proyecto (Experto->Proyecto) la opción DOXYFILE_ENCODING está establecida en UTF-8,

por lo que al preparar la documentación es mejor crear una carpeta separada con los archivos guardados en codificación UTF-8:

El resultado es:

Otra opción importante OUTPUT_LANGUAGE, con el idioma especificado (ruso) permite crear menús y descripciones en ruso:

La documentación facilita el estudio de la estructura y propiedades de los programas, por lo que hay que intentar adjuntar documentación a los códigos fuente.

Автоматическое создание документации к программам на MQL5
Автоматическое создание документации к программам на MQL5
  • 2009.11.23
  • Paul
  • www.mql5.com
Большинство Java программистов знакомы с автоматическим созданием документации, которая может быть создана при помощи программы JavaDocs. В мире C++ также есть несколько автоматических генераторов документации, одними из лидеров являются программы Microsoft's SandCastle и Doxygen. В статье описано, как можно использовать программу Doxygen для создания структурированных файлов справки HTML для программ, написанных на MQL5. Результаты данной работы убедили меня использовать Doxygen (или похожие программы) в будущем для создания документации к любому моему коду на MQL5, это значительно облегчает его понимание и использование.
 
Automated-Trading писал(а) # :

Por lo tanto, al preparar la documentación, es mejor crear una carpeta separada con los archivos guardados en codificación UTF-8:

Es más fácil establecer INPUT_ENCODING como windows-1251 en la pestaña Entrada. Y no hay problemas con las codificaciones
 
GarF1eld писал(а) # :
Es más fácil establecer INPUT_ENCODING como windows-1251 en la pestaña Entrada. Y no hay problemas con las codificaciones

Por supuesto que sería más fácil.

pero por alguna razón doxygen (tengo 1.6.2) inserta en todos los ficheros

<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>

aunque en la configuración

es decir, los archivos están en la codificación requerida, y la pantalla se puede corregir si en todos los html-archivos reemplazar con:

<meta http-equiv="Content-Type" content="text/xhtml;charset=windows1251"/>.

Pero la cuestión es cómo derrotarlo para que lo haga por sí mismo.
 
Honestamente no me di cuenta, ya que estoy bastante contento con UTF-8, y cuando tuve un problema con crocoblastos, sólo cambié INPUT_ENCODING.