AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / Editores / Editor de código
  • Presentación
  • Un código simple pero robusto
  • Variables y tipos
  • Programación potente
  • Programación estructurada y robusta
  • FOR EACH
  • Programación por procedimientos
  • Procedimientos
  • Programación Orientada a Objetos
  • Acceso integrado a bases de datos
  • Manipular la UI mediante programación
  • Otras funcionalidades...
  • Compilación dinámica
  • Programación defensiva
  • Multihilos y tareas paralelas
  • Multiplataforma
  • Seguridad de ejecución
  • Área de memoria segura
  • Lenguajes externos
  • Apertura
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Presentación
WLanguage, el lenguaje integrado de WINDEV, es poderoso, simple e intuitivo.
Es un lenguaje de quinta generación (5GL), lo que significa que sus comandos son altamente sofisticados.
Un comando WLanguage puede reemplazar docenas o incluso cientos de comandos de cuarta generación, haciendo la programación más fácil y fiable.
¡Nuestro lenguaje de quinta generación permite dejar atrás la complejidad innecesaria, las API incomprensibles y la programación improductiva!
Un código simple pero robusto
WLanguage es un lenguaje de programación claro y fácil de aprender que se acerca al lenguaje natural. El código se puede escribir y corregir fácilmente. Por lo tanto, es más sencillo mantener un código limpio.
FOR EACH Customer
Message is Email
Message.Recipient = Customer.EmailAddress
EmailSendMessage(Message)
END
El código anterior muestra la simplicidad de WLanguage. WLanguage está disponible en inglés y francés.

Variables y tipos

La declaración de variables es sencilla e intuitiva.
Message is Email
ArrayOfCustomers is array of Customers
Declarar variables es muy sencillo. WLanguage incluye diferentes tipos de variables simples como enteros, booleanos, monetarios, numéricos con hasta 38 dígitos significativos, reales y cadenas de caracteres.
Existen más de 20 tipos de variables simples.
Para obtener más información, consulte Diferentes tipos de datos.
WLanguage también incluye un gran número de variables avanzadas que permiten gestionar nociones complejas fácilmente: correos electrónicos, canales RSS, firmas y certificados, documentos XML, recursos para planificadores y calendarios, etc.
Programación potente

Programación estructurada y robusta

WLanguage incluye las estructuras de programación estándar iterativas y condicionales (FOR i, LOOP, WHILE, IF, SWITCH, etc.). Estas estructuras se han simplificado al máximo para escribir código de forma eficiente y rápida.
Por ejemplo, la declaración de variables de los bucles "FOR i" está implícita y las declaraciones SWITCH utilizan todas las comparaciones posibles de WLanguage.
SWITCH BookReference
CASE "A" <= * < "H": Floor = 1
CASE "H" <= * < "P": Floor = 2
CASE >= "P": Floor = 3
END
Se pueden utilizar intervalos complejos para definir los CASE.

FOR EACH

Los bucles "FOR EACH" navegan por todos los elementos de un conjunto, por ejemplo, por los registros de un archivo de datos, elementos de un array, campos seleccionados en una lista, subcadenas de una cadena, etc., ...
FOR EACH email NOT READ OF MailServerConnection
END
FOR EACH SELECTED ROW OF OptionList
END
FOR EACH Customer where Country = "France"
END
Programación por procedimientos

Procedimientos

La programación por procedimientos en WLanguage es muy poderosa. Los procedimientos permiten una organización lógica del código.
Un procedimiento WLanguage puede tener varios parámetros y valores de retorno.
Los parámetros pueden ser opcionales y su número puede variar.
Los procedimientos son recursivos.
El tipado puede ser estricto o flexible.
Principales funcionalidades soportadas:
  • Automatización (repetición, timer, hilo),
  • Sintaxis múltiple (dynamic dispatch),
  • Procedimientos internos (closures),
  • Parámetros con nombre,
  • Tipado fuerte o débil, ...
Los procedimientos incluyen funcionalidades integradas. La automatización de ejecución permite una ejecución programada: en 1 minuto, en 1 hora, después de las inicializaciones, etc.
La ejecución de un procedimiento también puede repetirse. Un procedimiento puede encontrase en un Temporizador o en un Hilo.
Los "procedimientos internos" y las expresiones lambda permiten escribir un subprocedimiento dentro de un procedimiento, lo que mejora la legibilidad del código, dado que no hay que pasar de un procedimiento a otro.
Las variables locales del procedimiento pueden utilizarse directamente en el subprocedimiento ("closure").
Los procedimientos internos se pueden utilizar en todas las funciones que requieren un "Callback", incluidas las funciones asíncronas.
Programación Orientada a Objetos
WINDEV también incluye la programación orientada a objetos. Los métodos de clases base pueden definirse desde el explorador de proyectos; los métodos virtuales se gestionan automáticamente.
En la mayoría de los casos, la memoria de las instancias se gestiona automáticamente, tanto para asignar como para liberar memoria.
Principales funcionalidades:
  • Clases,
  • Clases abstractas,
  • Interfaces (duck typing),
  • Herencia, herencia múltiple,
  • Reflexión,
  • Sobrescritura (dynamic dispatch),
  • Métodos abstractos y virtuales (polimorfismo),
  • Propiedades (get y set),
  • Constructor,
  • Destructor,
  • Encapsulación de datos: públicos, privados y protegidos,
  • Programación fácil en 5GL,
  • Liberación automática,
  • Operador "es un" y downcast,
  • Referencia débil,
  • Copia profunda,
  • ...
Acceso integrado a bases de datos
WLanguage incluye todos los aspectos de la gestión de base de datos. El compilador reconoce automáticamente la estructura de la base de datos, lo que permite manipular fácilmente los diferentes campos del registro en curso de un archivo de datos (fila de tabla).
La programación se realiza en SQL o WLanguage.
La programación de cursores es muy poderosa.
HReadSeek(Customer, Name, CustomerName)
tapiDial (Customer.PhoneNumber)

Las operaciones con datos requieren que los datos se copien de la base de datos a algunas variables, se modifiquen, se guarden o se recarguen en otro formato. Las operaciones comunes se realizan fácilmente con la sintaxis WLanguage.
La sintaxis WHERE, por ejemplo, permite acceder rápidamente a los subelementos de un elemento base.
La copia homónima permite copiar en una sola operación subelementos con el mismo nombre entre dos elementos heterogéneos.
Las funciones de serialización y deserialización permiten guardar y recargar el contenido de elementos complejos.
Manipular la UI mediante programación
Los controles de la UI ofrecen un gran número de posibilidades desde el momento en que se definen en el editor de ventanas. Su estado y comportamiento pueden ser modificados mediante programación según el tipo de control: las 270 propiedades de visualización (posición, ancho, etc.) y el código a ejecutar según las acciones del usuario se pueden adaptar a sus necesidades.
Las funciones ControlCreate y ControlClone permiten crear un nuevo control o duplicar un control existente.
Otras funcionalidades...

Compilación dinámica

WLanguage es un lenguaje dinámico. La compilación dinámica permite ejecutar código construido sobre la marcha.

Programación defensiva

La programación defensiva consiste en probar las entradas y salidas de cada procedimiento en el mismo código; los posibles errores solo se mostrarán en el modo de "depuración".
WLanguage incluye diferentes funciones de depuración dbgAssert, dbgCheckEqual, dbgCheckDifferent, dbgCheckTrue, dbgCheckFalse, ... La creación de pruebas unitarias permite probar una aplicación en cualquier momento.

Multihilos y tareas paralelas

Para aprovechar la potencia de los procesadores multinúcleo modernos y hacer que sus aplicaciones sean más rápidas, WLanguage ofrece una gestión avanzada de hilos.
Las tareas paralelas permiten dividir un proceso largo en varios procesos cortos que se ejecutarán en paralelo para aprovechar los procesadores modernos. Las variables se protegen automáticamente. Existen varios mecanismos de sincronización:
  • secciones críticas,
  • mutex,
  • semáforos,
  • señales, etc.

Multiplataforma

El código escrito en WLanguage es multiplataforma:
  • 32 o 64 bits,
  • Ventanas,
  • Linux,
  • Android,
  • iOS,
  • Java,
  • JavaScript,
  • PHP, etc.
Los componentes se pueden compartir entre varias plataformas.

Seguridad de ejecución

El mecanismo de seguridad de WLanguage evita que se dañen los datos. WLanguage gestiona errores (no fatales) y excepciones (fatales). Los errores y las excepciones pueden gestionarse automáticamente o mediante programación.

Área de memoria segura

El acceso a las áreas de memoria está controlado, lo que limita los riesgos de desbordamiento de búfer (buffer overflow).

Lenguajes externos

WINDEV permite llamar a un código escrito en un lenguaje externo o viceversa: Java, C++, C#, Fortran, VB, ...

Apertura

Puede acceder a todas las funcionalidades y estándares: API, llamadas DLL, COM, ActiveX, .NET, J2EE, eventos...
Se puede llamar fácilmente a una DLL en C o C++ desde una aplicación WINDEV, por ejemplo.
Versión mínima requerida
  • Versión 7
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 02/02/2023

Señalar un error o enviar una sugerencia | Ayuda local