DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Gestion du 3tiers
  • Présentation
  • Comment s'effectue la mise en oeuvre ?
  • Manipulation des différentes couches
  • Fonctions WLangage
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
Le développement en architecture "3-tiers" est simplifié.
Le 3 tiers, c'est quoi ?
Le but du 3 tiers est de séparer les 3 couches habituelles d'une application : IHM, traitements et données.
Une application sera composée de 3 couches indépendantes :
  • couche présentation,
  • couche application (ou traitement),
  • couche données (qui gère l'accès aux données).
Ces 3 couches communiqueront entre elles à l'aide de fonctions spécifiques (des API dans les langages traditionnels, des fonctions avancées en WLangage).
Cette séparation a pour but de rendre indépendantes chacune des couches afin de simplifier la maintenance et les évolutions futures de l'application (par exemple, changement de système de base de données, portage d'un environnement graphique à un autre, ...).
Elle assure une sécurité plus importante car l'accès à la base de données n'est autorisé que par la couche Application.
Elle a également l'avantage d'optimiser le travail en équipe et le développement multi-cibles.
Comment s'effectue la mise en oeuvre ?
Le dialogue entre les différentes couches s'effectue par classes ou par structures (à votre choix) qui sont générées automatiquement par WINDEV, WEBDEV et WINDEV Mobile.
1. Vous choisissez les sources de données (fichiers de données ou requêtes que vous désirez manipuler en 3-Tiers).
Vous créez sous l'éditeur d'analyses et l'éditeur de requêtes les différents fichiers de données et requêtes nécessaires.
2. WINDEV, WEBDEV et WINDEV Mobile construisent automatiquement le diagramme de classes qui correspond aux classes et structures qui vont être générées.
Pour cela, sous le volet "Analyse", dans le groupe "Analyse", déroulez "Génération" et sélectionnez "Générer le diagramme UML correspondant à l'analyse".
Il est également possible, dans l'éditeur d'UML de créer un diagramme de classes correspondant à l'analyse :
  • Cliquez sur parmi les boutons d'accès rapide.
  • La fenêtre de création d'un nouvel élément s'affiche : cliquez sur "Architecture" puis sur "UML".
  • L'assistant de création d'un diagramme "UML" se lance.
  • Dans l'assistant, sélectionnez "Diagrammes de classes (retro-analyse, 3 Tiers, ...)" et passez à l'étape suivante.
  • Sélectionnez "Construire le diagramme de classes correspondant à la base de données et aux requêtes (Architecture 3-Tiers)".
  • Validez.
  • Dans la fenêtre qui s'affiche, choisissez le type de code à générer (procédural ou objet) et validez.
3. Les classes et structures sont générées en WLangage.
Sous le volet "Projet", dans le groupe "Autres actions", déroulez "Modélisation UML" et sélectionnez "Générer le code". Les collections de procédures et/ou les classes sont automatiquement générées.
4. Vous pouvez apporter une "valeur ajoutée" en développant vos propres méthodes dans ces classes.
La synchronisation entre les classes et le diagramme est effectuée en temps réel.
Il est également possible de modifier l'analyse, et de synchroniser le diagramme UML avec l'analyse.
5. Il ne vous reste plus qu'à utiliser ces classes ou structures pour faire circuler les informations entre la couche "Application" et la couche "Présentation".

Manipulation des différentes couches

  • Pour la couche "Données" :
    Vous manipulez les ordres d'accès aux données habituels : lecture, écriture, requêtes, transactions, ...
  • Pour la couche "Application" :
    Des fonctions WLangage spécifiques peuvent être utilisées : FichierVersMémoire et MémoireVersFichier. Ces fonctions permettent de remplir les membres de la classe à partir des rubriques des fichiers de données correspondants, et inversement.
  • Pour la couche "Présentation" :
    Vous manipulez les classes générées, sans vous soucier de la structure de la base de données.
  • Pour la communication entre les couches :
    Suivant le protocole de communication entre les 2 couches (composant, service Web, HTTP, Site WEBDEV, ...) les classes peuvent être sérialisées en XML ou dans un format binaire (Fonctions Sérialise et Désérialise).

Fonctions WLangage

Les fonctions WLangage permettant la gestion du 3-tiers sont :
DésérialiseDésérialise un buffer ou une chaîne de caractères contenant les données d'une classe, d'une structure, d'un tableau (y compris un tableau associatif), d'une file, d'une pile, une liste ou une variable d'un type avancé et leurs sous-éléments.
FichierVersMémoireInitialise automatiquement les valeurs des membres d'une structure ou d'une classe avec les valeurs des rubriques de l'enregistrement en cours d'un fichier.
MémoireVersFichierInitialise automatiquement la valeur mémoire des rubriques de l'enregistrement en cours d'un fichier avec la valeur des membres d'une structure ou d'une classe.
SérialiseTransforme les éléments suivants dans un format spécifique :
  • une structure (et ses sous-éléments),
  • une classe (et ses sous-éléments),
  • un tableau (y compris les tableaux associatifs),
  • une file,
  • une pile,
  • une liste.
Version minimum requise
  • Version 10
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale