Discusión sobre el artículo "Aserciones en los programas MQL5"

 

Artículo publicado Aserciones en los programas MQL5:

Este artículo explica cómo utilizar aserciones en el lenguaje MQL5. Proporciona dos mecanismos de aserción a modo de ejemplo, así como una guía para implementarlas correctamente.

Una aserción es una construcción especial que permite comprobar suposiciones especiales en lugares arbitrarios del programa. Suelen embeberse en el código, generalmente en una función separada o en una macro. El código comprueba el valor de una expresión determinada. Si es falso, se muestra el mensaje correspondiente y el programa se detiene de acuerdo a la implementación proporcionada. De igual modo, si la expresión es cierta, es decir, si la suposición se cumple, quiere decir que todo funciona según lo previsto. En caso contrario el programará detectará errores y avisará de ello.

Por ejemplo, si se espera que un determinado valor X sea menor que cero, en todos los casos, entonces podemos formar este predicado: "confirmo que el valor de X es mayor o igual a cero". Si resulta que X es menor que cero, mostramos un mensaje relevante para que el programador pueda ajustar el programa.

Las aserciones son especialmente útiles en los proyectos grandes, donde hay muchos componentes que se pueden reutilizar o modificar con el tiempo.

Las aserciones contemplan aquellas situaciones que no deberían ocurrir durante la ejecución normal del programa. Como norma general solo se aplican en las fases de desarrollo y depuración del programa, esto es, no tienen que estar presentes en la versión final. Las aserciones tienen que eliminarse durante la compilación de la versión final. Esto se consigue con la compilación condicional.

Fig. 1. Ejemplo de aserción

Fig. 1. Ejemplo de aserción

Autor: Sergey Eremin