# WinDev

WinDev es un entorno de desarrollo integrado creado por la sociedad francesa PC SOFT, que permite crear aplicaciones basadas en un motor de ejecución (framework).
WinDev posee un editor de interfaz gráfica que permite crear interfaces de usuario gráficas por medio de drag/drop. Permite también escoger un modelo de manual de estándares gráfico a partir de una lista que se propone o crear uno nuevo. La herramienta de interfaz permite definir interactivamente varios aspectos sobre la entrada de datos: tamaño, máscara, formato automático, entrada obligatoria. Esto limita también el número de funciones a programar. También maneja herencia y sobrecarga. Como los lenguajes Java, Visual Basic o C#, el código se pre compila e interpreta en la ejecución por el framework, lo cual permite independencia del archivo ejecutable con respecto al sistema operativo. WinDev fue inicialmente previsto para Windows. WinDev permite generar aplicaciones en Java así como aplicaciones estándares o aplicaciones para la plataforma .NET o aplicaciones Linux nativas (desde la versión 16) con uso de la biblioteca Qt, pero no es totalmente compatible. Sus hermanos WebDev y WinDev Mobile permiten utilizar el mismo lenguaje de programación y los mismos conceptos (análisis, ventanas, reportes, componentes, clases…), para la generación de sitios Web y de aplicaciones para Pocket PC, Teléfonos inteligentes y terminales industriales. La versión 10 de las herramientas tiene como objetivo la construcción de proyectos multi objetivos a partir de un mismo código. En versión 11, WinDev integra funcionalidades ligadas a la domótica.

## Un conjunto de herramientas integradas

WinDev integra un conjunto de herramientas en su IDE: editor de análisis y modelador MER y UML, editor de documentación técnica, editor de modelos RAD (también llamados patterns), editor de ventanas, editor de consultas, editor de código, administrador de código fuente, editor de componentes, editor de reportes y de etiquetas incluyendo códigos de barra, editor de ayuda en línea, editor de instalación, editor de mantenimiento, editor de pruebas.
WinDev también proponen centros de control cuyo objetivo es organizar y controlar el desarrollo: centro de control topológico, centro de control de planificación, centro de control de calidad para manejar los comentarios de los usuarios (errores de programa o “bugs” y sugerencias), centro de control de datos.

## Soporte de bases de datos

WinDev soporta bases de datos, ya sea mediante protocolos ODBC u OLE DB, o con accesos nativos optimizados
* MySQL
* SQL Server
* Oracle
* DB2
* Progress
* Postgres (Disponible desde version 14)
* AS/400
* Informix
* Sybase
* SQLite (Disponible desde version 16)
WinDev también tiene su propio motor de base de datos, llamado HyperFileSQL. Esta base de datos se puede distribuir libremente, y existe en versión local, cliente/servidor bajo Windows, Linux y Móvil.

## Las funcionalidades automáticas de las aplicaciones desarrolladas

Las aplicaciones desarrolladas con WinDev (a partir de la versión 10) incluyen el beneficio por defecto de funcionalidades propuestas automáticamente al usuario final, y que pueden ser desactivadas también por el diseñador. Estas funcionalidades son: exportación de tablas hacia Word, Excel, OpenOffice y XML, creación de archivos pdf, posibilidad de capturar macros en código WLanguage, posibilidad de ordenar y buscar directamente en las tablas, posibilidad de memorizar los valores capturados en un control de texto y escogerlos otra vez (persistencia de datos), corrección ortográfica en tiempo real (el diccionario de openoffice.org debe estar instalado), bitácora histórica de las capturas en controles específicos, despliegue de un gráfico sobre una serie de datos seleccionados, aumento del tamaño de un combobox, agregar una suma, promedio y cuenta en una columna, posicionamiento de un cronómetro sobre un botón. El editor de reportes y consultas se puede instalar gratuitamente en el puesto de cada usuario final, lo cual permite que cada usuario cree libremente sus propios reportes, etiquetas y consultas.

## El lenguaje WLanguage

WinDev. utiliza un lenguaje de programación evolucionado propio llamado el WLanguage. Este se parece por momentos a Visual Basic, y también hace pensar un poco en algunos lenguajes de tercera generación como Borland Delphi en cuanto al código de ciclos y condiciones, etc…pero se clasifica sobre todo en los L5G de alto nivel de abstracción como SQL, eDevelopper, etc…
El lenguaje soporta la programación por procedimientos y la programación orientada a objetos, por lo tanto, se puede utilizar de diferentes maneras según la experiencia anterior del programador que empieza a conocer la herramienta. El WLanguage se distingue por la presencia de funciones de relativamente alto nivel, tales como la función ScreenToFile, quien realiza las asignaciones del contenido de los controles de una ventana hacia las tablas de una base de datos a las cuales fueron antes vinculados.
Ejemplo: