WinDev

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
WINDEV
Image illustrative de l'article WinDev
Logo

Développeur PC SOFT
Dernière version 20 [+/-]
Environnement Windows, Linux, .NET et Java
Langue Français, anglais, chinois
Type Atelier de génie logiciel
Licence Propriétaire
Site web PC SOFT

WinDev est un atelier de génie logiciel (AGL) édité par la société française PC SOFT et conçu pour développer des applications, principalement orientées données pour Windows 8, 7, Vista, XP, 2008, 2003, 2000, mais également pour Linux, .Net et Java. Il propose son propre langage, appelé le WLangage. La première version de l'AGL est sortie en 1993. Apparenté à WebDev et WinDev Mobile.

Outils intégrés[modifier | modifier le code]

L'environnement de développement intégré de WinDev est composé de :

  • Éditeur d'analyses et modélisation Merise et UML,
  • Éditeur d'interface graphique,
  • Éditeur de dossier technique,
  • Éditeur de modèles RAD (également appelés patterns),
  • Éditeur de fenêtres,
  • Éditeur de chartes graphiques,
  • Éditeur de requêtes,
  • Éditeur de code,
  • Gestionnaire de sources collaboratif,
  • Éditeur de composants,
  • Éditeur d'états et d'étiquettes y compris codes barres,
  • Éditeur d'aide en ligne,
  • Éditeur d'installation,
  • Éditeur de maintenance,
  • Éditeur de tests de non régression.

WinDev utilise son propre « langage de programmation », le WLangage, ressemblant beaucoup à du pseudo-langage.

L'éditeur d'interface graphique permet de créer des IHM par glisser-déplacer. Il permet également de choisir un modèle de charte graphique parmi un ensemble proposé et d'en créer de nouveaux. Attention cependant, à la différence de la plupart des langages supposés moins évolués, il a longtemps été impossible d'ajouter des champs à partir de rien ou de créer une IHM par pure programmation en WLangage : ceci devait se faire dans l'éditeur d'interface graphique, ou en utilisant un champ invisible hors fenêtre que l'on clonait. À partir de la version 19 les champs peuvent être créés par pure programmation. On peut définir interactivement des « sécurités » de saisie sur les champs parmi lesquelles : taille, masque, formatage automatique, saisie obligatoire et aide à afficher. Par ailleurs, l'héritage et la surcharge sont gérés.

Bien que prévu initialement pour Windows, WinDev supporte aussi GNU/Linux pour les applications avec[1] et sans interface graphique, mais aussi Mac OS X. Il peut également s'appuyer sur le framework Java pour une partie de ses fonctionnalités, ce qui permet une relative indépendance du fichier exécutable par rapport au système d'exploitation cible.

Ses frères WebDev et WinDev Mobile permettent d'utiliser le même langage de programmation (WLangage), et les mêmes concepts (analyse, fenêtre, états, composants, classes…), pour la génération de sites Web et d'applications pour PocketPC, terminaux industriels (Windows CE), smartphones et tablettes (iOS, Android et Windows RT).

WinDev propose également des centres de contrôle intégrés, dont le but est d'organiser et contrôler le développement :

  • Centre de contrôle topologique[pas clair] ;
  • Centre de contrôle de planning ;
  • Centre de contrôle qualité pour gérer les retours clients (bogues et suggestions, que l'utilisateur final peut envoyer directement via chaque application) ;
  • Centre de contrôle des données.

WinDev utilise des formats de fichier propriétaire sous forme binaire. Ce qui implique l'utilisation exclusive du gestionnaire de source maison (GDS) ainsi que le moteur de recherche de l'EDI. Le code ne peut pas être édité via un logiciel classique tel que le bloc-notes et surtout ne peut être mis sous contrôle de version dans un système standard tel que Subversion, Git ou Mercurial, par exemple. En fait, le développeur WinDev est totalement lié à l’environnement de développement vendu par l'éditeur.

Intégration[modifier | modifier le code]

WinDev permet de lire et aussi de modifier nativement les informations de Excel, Outlook, Lotus Notes, de l'ERP SAP R/3 (via la technologie BAPI) et depuis la version 14 celles de SalesForce et de diverses applications Google : Maps, Agenda, Contacts, Adwords,… Sont également supportés : ActiveX, appels de DLL, API Windows, OLE, RS 232 et USB, TAPI, SOAP, SNMP, OPC, Flash, Twain, FTP, Socket, TSE, Citrix, etc. Des fonctions domotiques sont présentes (norme X10).

Pour la manipulation d'un projet, les différents fichiers d'un projet ne peuvent être ouverts qu'avec WinDev (ou WebDev ou WinDev mobile) car ce sont des fichiers binaires et non pas des fichiers texte.

La création d'application multilangue est prise en compte automatiquement.

WinDev permet de s'interfacer avec du code C++, C#, Cobol, Fortran, Pascal.

Prise en charge des bases de données[modifier | modifier le code]

WinDev gère de nombreux systèmes de gestion de base de données, que ce soit par l'intermédiaire des protocoles ODBC ou OLE DB ou par accès natif. Il existe un accès natif gratuit pour MySQL, pour PostgreSQL (depuis la version 14) et pour SQLite (depuis la version 16). D'autres modules payants permettant l'accès natif à Oracle, SQL Server, Sybase, AS/400, DB2, Informix et Progress_4GL.

Il existe par ailleurs des accès natifs libres et gratuits comme MySQL4WD et PostgreSQL4WD de Rodolphe Jouannet[2] qui offrent un accès natif à MySQL et PostgreSQL. Le module libre et gratuit SQLManagerX de Frederic Emprin[3] permet d'écrire un seul code unifié pour gérer les différents systèmes de gestion de base de données. Par l'ajout d'autres modules, SQLManagerX offre un accès natif à un grand nombre de bases de données[4].

WinDev comporte aussi son propre système de gestion de base de données appelé HyperFileSQL (HFSQL) (anciennement nommé HyperFile). Il existe en version locale, client/serveur sous Windows, Linux et mobile. Les versions sont compatibles entre elles.

Les fonctionnalités automatiques des applications développées[modifier | modifier le code]

Les applications développées avec WinDev bénéficient par défaut de fonctionnalités automatiquement proposées à l'utilisateur final, qui sont néanmoins désactivables par le concepteur. Ces fonctionnalités sont : export des tables vers Word, Excel, OpenOffice et XML, création de fichier PDF, possibilité de saisir des macros en code WLangage, possibilités de tri et recherche directe dans les tables, possibilité de mémoriser les valeurs saisies dans un champ de saisie et de les choisir à nouveau (persistance des données), correction orthographique en temps réel (le dictionnaire de OpenOffice.org doit être installé), historique des saisies sur des champs spécifiés, affichage d'un graphique sur une série de données sélectionnées, agrandissement de la taille d'une combo, ajout de somme, moyenne et comptage dans une colonne et le positionnement d'une minuterie sur un bouton.

À partir de la version 10, l'éditeur d'états et de requêtes peut être installé gratuitement sur le poste de chaque utilisateur final, ce qui permet à chaque utilisateur de créer librement ses propres états, étiquettes et requêtes.

Les extensions de fichiers[modifier | modifier le code]

  • NDX : Index HyperFileSQL, permet de lister les catégories des données HyperFileSQL dans WinDev, c'est comme un index dans un livre pour pouvoir trouver la bonne page. Ce fichier est généré automatiquement par l'analyse lors de la création d'une application WinDev.
  • MMO : Mémo HyperFileSQL
  • FIC : Données HyperFileSQL
  • FTX : Index full-text HyperFileSQL (permet une recherche rapide sur plusieurs mots, et obtenir un résultat selon la pertinence)
  • WDC : Classe : WinDev permet en effet de générer des classes sur base des principes de la programmation orientée objet.
  • WDE : État
  • WDG : Collection de procédures globales
  • WDH : Aide
  • WDK : Composant
  • WDI : Interface de composant
  • WDL : Bibliothèque
  • WDP : Projet WinDev
  • WWP : Projet WebDev
  • WPP : Projet WinDev Mobile
  • WDR : Requête
  • WDU : Liste de fichiers pour une installation
  • WDW : Fenêtre, Modèle de fenêtre, Fenêtre interne
  • WDT : Modèle de champ
  • WDA : Analyse
  • WDD : Description d'analyse
  • RAD : Informations RAD
  • ENV : Paramètres d'environnement de l'éditeur
  • WL  : Source WLangage
  • CDP : Charte de programmation : celle-ci contient tous les préfixes / suffixes qui doivent être automatiquement accolés lorsque le développeur saisira son code. On peut créer autant de chartes que l'on veut, il suffit ensuite d'intégrer l'une d'entre elles dans le projet via sa description.
  • WDY : Gabarit
  • STY : Feuille de styles
  • WPF : Analyse de performance
  • WDF : Paramètres d'installation
  • WXT : Tests automatiques
  • WEM : Modélisation souple
  • WDZ : Archives

Historique des versions[modifier | modifier le code]

Version Date de sortie Commentaires / Nouveautés importantes
1.0 1993
1.5 Janvier 1994
2.0 Fin 1994
2.1 Avril 1995
4.0 Avril 1996
4.1 Septembre 1996
5.0 Début 1998
5.5 Fin 1998
7.0 Fin 2001
7.5 Fin 2002
8 Fin 2003
9 Fin 2004
10 Décembre 2005 Construction de projets multicibles à partir d'un même code
11 Décembre 2006 Domotique, tests unitaires intégrés, tableau de bord de gestion du projet, et rétro analyse des codes existants.
12 Décembre 2007 Compilation à la volée, débogage à distance, accès natif à SAP R/3, fonctions SNMP et Bluetooth, gestion des champs de saisie dans les états PDF, possibilité d'inclure des commandes vocales dans les applications développées.
14 Décembre 2008 Accès natif à des applications Google, databinding élargi, Robot de surveillance, lien natif avec Salesforce, automatisation des builds,
15 Décembre 2009 De nouveaux champs, l'amélioration de la vitesse et de la sécurité des applications/sites Web. Maintenance sans déconnexion. Support de l'OS de Google, Android, et autres 555 nouveautés (dont plus d'une centaine de nouvelles images, de fonctions, un nouvel outil agenda, ainsi qu'une compatibilité étendue des fonctions existantes avec les systèmes Linux).
16 Décembre 2010 Parmi les « 996 nouveautés » : champ planning (WinDev, WebDev et PHP), gestion des certificats, création d'exécutables GNU/Linux avec IHM, accès natif à SQLite, HTML5 (balises audio et vidéo, applications déconnectées, utilisation de SQLite en code navigateur).
17 Décembre 2011 Parmi les « 917 nouveautés » : champ organigramme, notation/évaluation, sélection multi cellules dans les tables, enregistrement des filtres, messages furtifs, amélioration du champ planning, performances accrues lors de l'utilisation de tableaux, syntaxe SQL étendue pour l'éditeur de requêtes, nouveaux gabarits, optimisation des installations et nouvelles fonctionnalités (comme la vérification silencieuse des mises à jour), support de l'Unicode plus complet (tous les environnements). De nombreux changements ont été apportés pour WebDev et WinDev Mobile (compatibilité supérieure avec les nouveaux appareils et nouvelles versions des OS).
18 Décembre 2012 Parmi les « 918 nouveautés » : champ tableau croisé dynamique (rOLAP), nouvelle interface de type ruban, support natif de Windows 8 (PC de bureau, tablette et smartphone), HyperFileSQL Android, FTP sécurisé, traduction des projets avec Google traduction, graphe surface, champ timeline, nouveau sélecteur de couleurs, nouveautés dans la recherche (plusieurs fenêtres, filtrage par configuration, colorisation syntaxique, casse), Impression HTML, CSS3, Réplication multi-sites.
19 Décembre 2013 Parmi les « 919 nouveautés » : champ « Tableau de bord », champ « Diagramme de Gantt », ajout d'ancrages dans les états (reporting) afin de pouvoir créer des états pouvant être utilisé indépendamment en portrait ou en paysage.
20 Décembre 2014 Parmi les « 920 nouveautés » : champ « Tableur », modélisation MVP.

La communauté autour de WinDev[modifier | modifier le code]

Tour De France Technique[modifier | modifier le code]

Chaque année, entre le mois de mars et le mois de mai, PC SOFT organise dans toute la France ce qu'ils appellent le TDF Tech (Tour De France Technique). Cet événement d'une demi-journée a pour but d'informer et de présenter les nouveautés de chaque version. Pendant cette courte formation, les différents intervenants utilisent un grand nombre d'applications pré-conçues dans lesquelles ils ont intégré les multiples nouveautés, tout en exploitant le matériel (serveurs, téléphones) qu'ils ont apportés. Non seulement, WinDev est largement mis en avant, mais aussi les autres environnements : WebDev et WinDev Mobile. Le code sources des sujets présentés ainsi qu'un support de cours sont remis à chaque participant.

Notes et références[modifier | modifier le code]

  1. Depuis la version 16.
  2. rodolphe.jouannet.free.fr
  3. SQLManagerX.com
  4. En mai 2008, les bases supportées par SQLManagerX sont : MySQL, Oracle, DB2, Interbase / Firebird, Pervasive.SQL, Access, SQL Server, PostgreSQL, SQLite

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]