Programación orientada a objetos en MQL5
En algún momento del proceso de desarrollo de software se pone de manifiesto el problema de que los tipos integrados y el conjunto de funciones no son suficientes para la aplicación efectiva de los requisitos. La complejidad de gestionar muchas de las pequeñas entidades que componen el programa crece como una bola de nieve y exige utilizar algún tipo de tecnología capaz de mejorar la comodidad, la productividad y la calidad del trabajo del programador.
Una de estas tecnologías, implementada a nivel de muchos lenguajes de programación, se denomina Orientada a Objetos, y el estilo de programación basado en ella, Programación Orientada a Objetos (POO), respectivamente. El lenguaje de programación MQL5 también lo admite y, por tanto, pertenece a la familia de los lenguajes orientados a objetos, como C++.
Del nombre de la tecnología se deduce que está organizada en torno a objetos. En esencia, un objeto es una variable de un tipo definido por el usuario, es decir, un tipo definido por un programador utilizando herramientas de MQL5. La posibilidad de crear tipos que modelen el área temática hace que los programas sean más comprensibles y simplifica su redacción y mantenimiento.
En MQL5 existen varios métodos para definir un nuevo tipo, y cada método se caracteriza por algunas características que describiremos en las secciones pertinentes. Según el método de descripción, los tipos definidos por el usuario se dividen en clases, estructuras y asociaciones. Cada uno de ellos puede combinar datos y algoritmos, es decir, describir el estado y el comportamiento de objetos aplicados.
En la primera parte del libro mencionamos la cita de uno de los padres de la programación, Nicklaus Wirth, que decía que los programas son una simbiosis de algoritmos y estructuras de datos. Así, los objetos son esencialmente miniprogramas: cada uno es responsable de resolver su propia tarea, aunque pequeña, pero completa desde el punto de vista lógico. Componiendo objetos en un único sistema se puede construir un servicio o producto de complejidad arbitraria. Así, con la POO obtenemos una nueva interpretación del principio de «divide y vencerás».
La programación orientada a objetos debe considerarse una alternativa más potente y flexible al estilo de programación procedimental que exploramos en la segunda parte. Al mismo tiempo, ambos enfoques no deben contraponerse: si es necesario, pueden combinarse, y en las tareas más sencillas, la programación orientada a objetos puede dejarse de lado.
Así, en esta tercera parte del libro estudiaremos los fundamentos de la POO y las posibilidades de su implementación práctica en MQL5. Además, hablaremos de plantillas, interfaces y espacios de nombres.
|
Programación en MQL5 para Traders: códigos fuente del libro. Parte 3 |
|
Los ejemplos del libro también están disponibles en el proyecto público \MQL5\Shared Projects\MQL5Book |