Définition de WYSIWYG

WYSIWYG est l'acronyme de What You See is What You Get. Ce que vous voyez est ce que vous obtenez. Cela s'applique aux éditeurs de texte et outils de présentation qui permettent d'éditer directement un contenu sous la forme qui sera affichée aux utilisateurs finaux, et non pas en tapant un code interne.

Par exemple, Dreamweaver ou Komposer sont des éditeurs de pages Web WYSIWYG par opposition aux premiers éditeurs plus rustiques avec lesquels il fallait taper le code des balises HTML.
Ces éditeurs peuvent cependant toujours afficher le code source HTML et permettre de taper directement du code en mode source si besoin. C'est rarement le cas des logiciels de traitement de texte.

Exemple de texte WYSIWYG:

Scriptol.fr

Et le code source HTML:

<a href="https://www.scriptol.fr" target="_top">Scriptol.fr</a>

Certains CMS requièrent que l'on entre le texte des billets sous forme codée, en BBCode par exemple, d'autres intègrent un éditeur WYSIWYG.

Le même texte en BBCode:

[url=https://www.scriptol.fr]Scriptol.fr[/url]

Existe-t-il l'équivalent d'un mode WYSIWYG pour les programmes?

Peut-on appliquer le WYSIWYG à la programmation?

Plusieurs techniques répondent à l'objectif de donner une présentation visuelle plus intuitive d'un programme.
Les IDE utilisent des outils visuels pour créer les interfaces à partir de composants que l'on assemble, et qui générent automatiquement le code source.
UML (Unified Modeling Language), comme son nom l'indique est une autre façon de modéliser les programmes et de passer d'une présentation visuelle à un code compilable.
Mais la représentation la plus ancienne est l'ordinogramme, ou organigramme. On peut la moderniser par un schéma des objets et leurs interactions par les messages qu'ils envoient, comme ci-dessous.

Programmation WYSIWYG

Elle peut imbriquer des ordinogrammes pour les méthodes des objets.

La représentation parfaite, non schématique, d'un programme serait l'affichage de l'application durant son fonctionnement. Donc développer un programme interactivement en même temps qu'on le fait fonctionner.
C'est quelque chose que l'on peut faire avec un EDI comme LightTable, qui dispose d'un moteur de rendu intégré (celui de Chromium) et permet d'éditer un programme durant son exécution tout en voyant les changements affichés, sans avoir besoin de recharger quoi que ce soit.

Voir aussi...