WLangage

langage de programmation
(Redirigé depuis W-Langage)

WLangage
Image illustrative de l’article WLangage

Date de première version 1992
Paradigme procédural, structuré, orienté objet
Auteur PC SOFT
Typage statique, dynamique, faible
Influencé par BASIC, Pascal, C++
Implémentations WinDev, WebDev, WinDev Mobile, Wdscript
Système d'exploitation Multiplate-forme (Windows, Windows CE, Windows Phone, Windows Mobile, iOS, Linux, Android)

Le WLangage[1] est un langage de programmation apparu en 1992 avec WinDev. Utilisé par les outils de développement WinDev, WebDev et WinDev Mobile, il est propriétaire et les programmes ne peuvent être manipulés qu'avec les outils PC SOFT.

Même s'il y a explicitement une première phase précoce de compilation, le bytecode WLangage est exécuté par une machine virtuelle.

ProgrammationModifier

Le WLangage est un langage de programmation procédurale qui permet la programmation impérative et la programmation orientée objet.

Le WLangage contient des fonctions de haut niveau, telle que la fonction EcranVersFichier, qui effectue les affectations du contenu des champs d'une fenêtre vers des tables stockées dans un fichier ou des variables, auxquelles les champs ont été préalablement reliés (databinding).

TypageModifier

Les variables doivent être typées mais les paramètres formels des procédures ou les itérateurs de boucles peuvent ne pas l'être. Il est ainsi possible dans un même projet de combiner des procédures avec typage strict pour profiter de la rigueur du typage statique et des procédures sans typage pour profiter de la souplesse du typage dynamique et du duck typing.

Orientation objetModifier

Le WLangage permet l'utilisation de classes et inclut entre autres :

Gestion des instancesModifier

L'allocation des instances est toujours dynamique. Une variable ou un membre objet manipule en fait une référence sur l'instance.

La gestion des instances se fait par comptage de références, c'est-à-dire que chaque instance possède un compteur du nombre de variables ou de membres qui la manipulent. Dans le cas de références circulaires entre instances, il est nécessaire de forcer la libération d'une instance du cycle par l'ordre libérer (delete si on code en anglais) pour libérer les autres instances du cycle.

TrilingueModifier

Le WLangage permet de programmer en français, en anglais et en chinois, exemples :

- en français :

sChaine est une chaîne
sChaine = DateVersChaine(DateDuJour())

Info("Nous sommes le " + sChaine)

- ou en anglais :

sChaine is string
sChaine = DateToString(Today())

Info("Today is " + sChaine)

- ou en chinois (dans la version chinoise de WinDev uniquement[2]) :

定义sChaine为字符串型变量
sChaine=日期转换为字符串(今天())
信息("今天是 :"+sChaine)

- voire en mélangeant les langues :

sChaine is string
sChaine = DateVersChaine(DateDuJour())
Info("Nous sommes le " + sChaine)

Il est possible de traduire automatiquement le code d'une langue à l'autre mais cela est plus dû à l'éditeur de code de WinDev, WebDev et WinDev Mobile qu'au WLangage lui-même.

AnnexesModifier

Liens externesModifier

Notes et référencesModifier

  1. W-Langage est l'ancienne orthographe de WLangage.
  2. Page 54 de la brochure des nouveautés de la version 22 de WINDEV