1.5Le RAD : générer une application complète
L'essentiel en 30 secondes
- Le RAD génère automatiquement depuis l'analyse : fenêtres, tables, menus, boutons, code de gestion des données, parfois des états.
- Il dépend entièrement de la qualité de l'analyse : un modèle bancal donne une application bancale, simplement plus vite.
- Il ne remplace pas le développeur : le code généré est générique et ignore vos règles métier, que vous devez écrire ensuite.
Mini-cas filé — Yacine lance le RAD sur son analyse
L'analyse de Yacine est prête (Client, Produit, Commande, LigneCommande). Il lance le RAD. En quelques minutes, WinDev génère une application complète : une fenêtre de consultation avec table des commandes, des fenêtres d'ajout et de modification, un menu, les boutons et le code standard de gestion des données. Yacine peut déjà saisir et consulter — c'est spectaculaire. Mais il constate vite les limites : le RAD ne sait pas que sa PME accorde 5 % de remise au-delà de dix articles, ni qu'une commande doit être bloquée en cas d'impayés, ni que le stock ne doit pas devenir négatif. Ces règles métier, il doit les écrire lui-même (sections 1.3 et 1.4). Il utilise alors le RAD par élément pour ajouter une fenêtre sur un nouveau fichier, puis personnalise. Yacine retient : le RAD est un formidable accélérateur de démarrage, pas un substitut à la conception.
Cas autonome de cette section : il revient dans le cours, le schéma, le script et le défi 48h de la section 1.5.
1. Ce que le RAD génère
Le RAD (Rapid Application Development) est la fonctionnalité emblématique de WinDev : à partir de votre ANALYSE, il génère automatiquement une application complète et fonctionnelle — fenêtres de saisie, fenêtres de consultation avec tables, menus, boutons d'action, code de gestion des données, voire états d'impression.
En quelques minutes, on passe d'un modèle de données à une application que l'on peut réellement exécuter, saisir, rechercher et imprimer. On distingue le RAD complet (toute l'application) du RAD par élément (une fenêtre pour un fichier précis) — ce dernier est souvent le plus utile au quotidien.
2. Ce que le RAD ne fait pas
Le RAD accélère le démarrage en produisant une base de travail cohérente, conforme aux standards de l'atelier. Mais il ne remplace pas le développeur : le code généré est générique et ne connaît rien de vos règles métier (remise, contrôle de cohérence, circuit de validation).
Il dépend entièrement de la qualité de l'analyse : une analyse bancale produit une application bancale, plus vite mais bancale. Le résultat est toujours à personnaliser — ergonomie, libellés, règles, enchaînements.
3. Un accélérateur, pas un substitut
La bonne démarche : soigner l'analyse, puis générer (RAD complet au démarrage, ou par élément au fil de l'eau), tester l'application générée, puis personnaliser en ajoutant ses règles métier.
Enfin, le RAD est un excellent outil d'apprentissage : lire le code généré fait découvrir les fonctions de l'atelier et les bonnes pratiques. Yacine s'en sert de point de départ, jamais de livrable final.
🔎 Exemple concret — 🔎 Exemple concret — RAD complet ou par élément ?
Deux usages du RAD dans le projet de Yacine :
RAD complet : analyse "NegoceElec" → application entière
(fenêtres Ajout / Modification / Consultation, menus, tables, états)
RAD par élément : un fichier précis (ex. Facture) → une fenêtre dédiée
(souvent le plus maniable au quotidien)
→ base fonctionnelle générée, PUIS on ajoute en WLangage :
remise 5 %, blocage sur impayé, stock non négatif…
Lecture : le RAD livre une base fonctionnelle immédiate ; tout ce qui est propre au métier de Yacine reste à écrire.
Réflexe : soigner l'analyse d'abord, générer ensuite, puis personnaliser.
Vocabulaire de la section
- RAD
- Rapid Application Development : génération automatique, à partir de l'analyse, d'une application complète (fenêtres, tables, menus, code de gestion, états).
Exemple simple : Yacine lance le RAD et obtient une application de négoce fonctionnelle en quelques minutes.
Ce que ce n'est pas : recoder à la main chaque fenêtre alors que le RAD les génère.
Réflexe : analyse prête → générer avec le RAD.
- RAD complet / RAD par élément
- Le RAD complet génère toute l'application d'un coup ; le RAD par élément génère une fenêtre (ou un état) pour un fichier précis.
Exemple simple : Yacine génère une fenêtre dédiée sur le fichier Facture avec le RAD par élément.
Ce que ce n'est pas : régénérer toute l'application pour ajouter un seul écran.
Réflexe : un écran précis → RAD par élément.
- Dépendance à l'analyse
- Le RAD s'appuie entièrement sur l'analyse : un modèle de données bancal produit une application bancale, simplement plus vite.
Exemple simple : Yacine soigne son analyse car le RAD en dépend directement.
Ce que ce n'est pas : lancer le RAD sur une analyse bâclée et livrer une application incohérente.
Réflexe : RAD de qualité → analyse de qualité d'abord.
- Règles métier (à écrire)
- Le code généré est générique : calculs, contrôles, validations et enchaînements propres au métier sont à écrire en WLangage.
Exemple simple : Yacine code lui-même la remise de 5 % et le blocage sur impayé.
Ce que ce n'est pas : croire que le RAD devinera les règles commerciales de la PME.
Réflexe : règles métier → écrites par le développeur.
- Outil d'apprentissage
- Examiner le code généré par le RAD est une excellente façon de découvrir les fonctions de l'atelier et les bonnes pratiques.
Exemple simple : Yacine relit le code généré pour apprendre les fonctions HFSQL.
Ce que ce n'est pas : ignorer le code généré au lieu de s'en servir pour progresser.
Réflexe : débuter → lire le code du RAD.
En pratique — En pratique — Générer une application avec le RAD
- Assurez-vous d'abord que votre ANALYSE est correcte (fichiers, rubriques bien typées, clés primaires, liaisons) — le RAD en dépend entièrement.
- Lancez le RAD (complet pour une application entière, ou par élément pour générer une fenêtre sur un fichier précis) et laissez WinDev produire la base.
- TESTEZ l'application générée : saisie, recherche, modification, suppression, impression.
- PERSONNALISEZ ensuite : ergonomie, libellés, enchaînements, et surtout ajoutez vos RÈGLES MÉTIER (contrôles, calculs) que le RAD ne peut pas deviner.
Script pas-à-pas — générer puis personnaliser comme Yacine (4 min)
1) Vérifiez l'analyse (fichiers, types, clés, liaisons) : le RAD en dépend. 2) Lancez le RAD complet pour obtenir l'application entière, ou le RAD par élément pour un fichier précis. 3) Exécutez l'application générée et testez saisie, recherche, modification, suppression. 4) Personnalisez l'ergonomie et les libellés. 5) Ajoutez vos règles métier en WLangage (remise, blocage, stock) que le RAD ne devine pas. 6) Relisez le code généré pour apprendre.
Le RAD ne connaît ni vos priorités ni vos règles métier : la personnalisation fait partie du travail.
Modèle copier-coller — la check-list RAD de Yacine
[ ] Analyse vérifiée (fichiers, types, clés primaires, liaisons)
[ ] Mode choisi : RAD complet (application) ou RAD par élément (un écran)
[ ] Application générée et testée (saisie, recherche, modification, suppression)
[ ] Ergonomie et libellés personnalisés
[ ] Règles métier ajoutées en WLangage (remise, blocage, stock…)
[ ] Code généré relu (outil d'apprentissage)
[ ] Base fonctionnelle adoptée comme point de départ, pas comme livrable final
RAD complet au démarrage
Yacine génère toute l'application de négoce d'un coup pour obtenir rapidement une base de travail.
RAD par élément
Quand la direction ajoute la gestion des factures, Yacine génère seulement la fenêtre sur le fichier Facture.
Apprentissage
Yacine relit le code généré pour comprendre les fonctions HFSQL et s'en inspirer dans ses propres écrans.
Personnalisation métier
Après la génération, Yacine ajoute ses règles : remise de 5 %, blocage sur impayé, refus de stock négatif.
✓ Bonnes pratiques
- Soigner l'analyse avant de lancer le RAD : il en dépend entièrement.
- Utiliser le RAD comme accélérateur de démarrage, puis personnaliser.
- Ajouter soi-même les règles métier que le RAD ne peut pas deviner.
✗ Pièges fréquents
- Livrer l'application générée telle quelle, sans personnalisation.
- Lancer le RAD sur une analyse bâclée.
- Croire que le RAD écrit vos règles métier à votre place.
Points clés à retenir
- Le RAD génère automatiquement une application complète à partir de l'analyse : fenêtres, tables, menus, code de gestion.
- Il dépend entièrement de la qualité de l'analyse : un modèle bancal donne une application bancale.
- Il ne remplace pas le développeur : le code généré est générique et ignore vos règles métier.
- On l'utilise comme accélérateur de démarrage, puis on personnalise — et lire le code généré aide à apprendre.
Défi 48h — appliquez demain
Prenez une petite analyse (fichiers, types, clés, liaisons) et générez une application avec le RAD, comme Yacine. Testez-la, puis ajoutez une règle métier en WLangage que le RAD ne connaît pas. Écrivez en une phrase pourquoi le RAD ne dispense pas d'apprendre à programmer.
- Je comprends ce que le RAD génère automatiquement à partir de l'analyse.
- Je sais choisir entre RAD complet et RAD par élément.
- Je sais que les règles métier restent à écrire après la génération.
Questions fréquentes
Le RAD permet-il vraiment de développer une application sans savoir programmer ?
Non : le RAD génère une base fonctionnelle impressionnante sans écrire une ligne, mais toute application réelle exige des règles métier, des contrôles et des enchaînements qui demandent de savoir programmer. Le RAD accélère le développeur, il ne le remplace pas. Yacine s'en sert pour démarrer vite, puis écrit lui-même sa remise de 5 %, son blocage sur impayé et son contrôle de stock.
Faut-il utiliser le RAD sur un vrai projet ou coder à la main ?
Utilisez le RAD comme point de départ, puis personnalisez : c'est le meilleur compromis entre gain de temps et maîtrise. Tout coder à la main gaspille du temps sur la partie répétitive ; générer sans reprendre produit une application générique et impersonnelle. La démarche : soigner l'analyse, générer, tester, puis personnaliser l'ergonomie et ajouter ses règles métier — en relisant le code généré comme un exemple de bonnes pratiques.
Que fait le RAD et quelle est sa principale limite ?