12 questions pour valider le niveau 3 avec Yacine, développeur WinDev dans une PME de négoce de matériel électrique à Oran : procédures et collections, types avancés, POO, gestion des erreurs et réutilisation.
Répondez à tout, puis cliquez sur Corriger : score et explications s'affichent.
3 · Rappel
1. Quelle procédure est accessible depuis toutes les fenêtres du projet ?
La procédure globale est déclarée au niveau du projet : elle est visible de tous les écrans, contrairement à la procédure locale.
3 · Application
2. Yacine utilise la même remise fidélité dans trois écrans. Où la placer ?
Une règle utilisée dans trois écrans devient une procédure globale rangée dans une collection : une seule correction suffit.
3 · Arbitrage
3. Une procédure modifie la variable d'origine sans que Yacine le voie. Quelle piste ?
Le passage par référence transmet la variable elle-même : la procédure modifie l'original. Le passage par valeur aurait travaillé sur une copie.
3 · Rappel
4. Quel type permet de retrouver directement un client par son code ?
Le tableau associatif range la valeur sous une clé : l'accès par code client est direct, sans parcourir la collection.
3 · Application
5. Yacine importe un CSV de 20 000 articles. Quel réflexe avant de convertir ?
Un import contient du texte et des formats variables : il faut contrôler les valeurs, le séparateur décimal et le format de date avant de convertir.
3 · Arbitrage
6. Pour un simple bloc rue, code postal et ville, que choisir ?
Une structure regroupe des données liées sans comportement : c'est le choix le plus simple pour une adresse. La classe se justifie s'il y a des règles.
3 · Rappel
7. Quel principe empêche de modifier directement le solde d'un client ?
L'encapsulation protège les membres sensibles : l'encours ne change que par une méthode contrôlée comme EnregistreFacture.
3 · Application
8. Quel élément initialise un objet au moment de sa création ?
Le constructeur est appelé automatiquement à la création de l'objet pour initialiser ses membres.
3 · Arbitrage
9. Faut-il convertir toute l'application de Yacine en POO ?
La POO est utile pour les règles riches et les variantes, mais une application de gestion se développe très bien en procédural structuré.
3 · Rappel
10. Que permet QUAND EXCEPTION autour d'une écriture HFSQL ?
QUAND EXCEPTION intercepte une erreur d'exécution : on peut journaliser le détail et afficher un message clair, au lieu de laisser l'application planter.
3 · Application
11. Un bug intermittent apparaît chez un client. Quelle est la première étape ?
Un bug non reproductible ne peut pas être corrigé avec certitude : commencez par identifier les conditions exactes et reproduire le cas.
3 · Arbitrage
12. Le module de gestion des utilisateurs servira à trois applications du groupe. Que faire ?
Un module cohérent partagé entre plusieurs projets devient un composant : correction centralisée, interface stable et versions maîtrisées.
Et après ?
Score ≥ 80 % : passez au Niveau 4 — sécurité, UX avancée, déploiement et qualité avec Yacine.
Score entre 50 % et 80 % : reprenez les sections ratées (3.1 procédures et collections, 3.2 types avancés, 3.3 POO, 3.4 erreurs et débogage, 3.5 réutilisation), relisez le cours puis refaites le test.
Score < 50 % : relisez tout le niveau 3 en appliquant chaque défi 48h (factorisation, import CSV, classe Client, QUAND EXCEPTION, modèle de fenêtre) avant de retenter.
Et après ? Gardez les réflexes de Yacine — factoriser, choisir le bon type, encapsuler, reproduire les bugs et réutiliser sans casser : le niveau 4 les branche sur la sécurité, l'UX et le déploiement.