Programmation Web : les traitements clients
- Fiche de cours
- Quiz
- Profs en ligne
- Videos
- Application mobile
Objectif :
Pourquoi répartir les traitements dans les
environnements réseaux ?
1. Présentation : développer des
applications informatiques répondant aux besoins des
acteurs de l'organisation
Rappel : dans ses besoins d'échanges,
l'organisation utilise les architectures applicatives
client/serveur dans les réseaux informatiques de
la composante technologique du système
d'information.
Les différents types d'architecture client/serveur présentent une répartition des traitements entre les postes de travail client et les ordinateurs serveurs.
La logique de répartition des traitements intègre :
• la réponse aux besoins des utilisateurs dans le cadre de leur travail,
• les capacités technologiques de l'environnement du réseau informatique.
Les concepteurs d'application (informaticiens) doivent intégrer cette réalité dans le cadre du choix d'une architecture applicative.
Les différents types d'architecture client/serveur présentent une répartition des traitements entre les postes de travail client et les ordinateurs serveurs.
La logique de répartition des traitements intègre :
• la réponse aux besoins des utilisateurs dans le cadre de leur travail,
• les capacités technologiques de l'environnement du réseau informatique.
Les concepteurs d'application (informaticiens) doivent intégrer cette réalité dans le cadre du choix d'une architecture applicative.
2. Logique des traitements « clients »
On se souvient que l'architecture d'une application se
décompose en trois niveaux fonctionnels :
présentation, traitements,
données.
Voici la représentation des architectures applicatives 2 niveaux (tier), qui servira de base à l’illustration de la mise en place de traitements dans les applications clientes (cette logique pourra être généralisée aux architectures 3 niveaux ou multi niveaux).
En dehors des logiciels « clients légers », chargé exclusivement de fournir le niveau présentation à l'utilisateur du programme (à l’exemple des navigateurs WWW de base), il existe deux autres catégories de logiciels clients permettant la gestion de traitements sur le poste local (le client matériel).
• Le client lourd qui héberge les niveaux présentation et traitement (l'ensemble des traitements est gérés par l'application cliente : gestion du dialogue homme-machine, gestion de l'intégrité des données, traitements applicatifs, accès et traitements des données.
• Le client enrichi qui héberge le niveau présentation et une partie des traitements, qui est souvent l'illustration des applications dans les environnements Internet (les traitements propres au poste local sont gérés par les navigateurs WWW, et les traitements d'accès aux données s'effectuent sur le(s) serveur(s)).
Voici la représentation des architectures applicatives 2 niveaux (tier), qui servira de base à l’illustration de la mise en place de traitements dans les applications clientes (cette logique pourra être généralisée aux architectures 3 niveaux ou multi niveaux).
En dehors des logiciels « clients légers », chargé exclusivement de fournir le niveau présentation à l'utilisateur du programme (à l’exemple des navigateurs WWW de base), il existe deux autres catégories de logiciels clients permettant la gestion de traitements sur le poste local (le client matériel).
• Le client lourd qui héberge les niveaux présentation et traitement (l'ensemble des traitements est gérés par l'application cliente : gestion du dialogue homme-machine, gestion de l'intégrité des données, traitements applicatifs, accès et traitements des données.
• Le client enrichi qui héberge le niveau présentation et une partie des traitements, qui est souvent l'illustration des applications dans les environnements Internet (les traitements propres au poste local sont gérés par les navigateurs WWW, et les traitements d'accès aux données s'effectuent sur le(s) serveur(s)).
3. Les traitements « clients » dans les
environnements WWW
De nombreux développements permettant de
répondre aux besoins des organisations s'orientent
vers les technologies Internet, et en particulier les
services WWW.
A sa création le navigateur WWW était un client léger, qui progressivement pour répondre aux besoins utilisateurs s'est enrichi à partir de nombreuses technologies applicatives.
Le langage HTML a évolué en intégrant la notion de dynamisme client avec le Dynamic HTML (ensemble des technologies permettant la gestion de traitements par le navigateur WWW) parmi lesquelles :
• Les langages « script » comme JavaScript (principalement) ou VBScript (pour le navigateur Internet Explorer) ont permis d’écrire des programmes exécutables par les navigateurs WWW.
• AJAX (Asynchronous Javascript And XML) permet une optimisation de la gestion des traitements entre le client et le serveur (pour limiter les transferts sur le réseau), en augmentant la réactivité de l'application cliente, qui ne sollicite le serveur que pour les données dont l'application cliente a besoin.
• Applet JAVA (appliquette) sont des applications interprétables par le navigateur WWW, qui vont permettre la mise en œuvre de traitements clients.
• Flash, Flex est une solution populaire et propriétaire (société Adobe) qui a permis d'intégrer des traitements multimédias et fonctionnels au niveau des navigateurs WWW (un fichier d'extension .swf est traité par un applicatif « plugin » local Flash Player).
• et bien d'autres solutions comme JavaFX ou le « plugin » Silverlight …
Définition : un « PlugIn » est une application informatique autonome, qui interagit avec le navigateur WWW (ou d'autres applications) pour ajouter des fonctionnalités ; dans le domaine WWW. Les « PlugIns » ont pour rôle de permettre l'interopérabilité entre le navigateur WWW et d'autres applicatifs.
A sa création le navigateur WWW était un client léger, qui progressivement pour répondre aux besoins utilisateurs s'est enrichi à partir de nombreuses technologies applicatives.
Le langage HTML a évolué en intégrant la notion de dynamisme client avec le Dynamic HTML (ensemble des technologies permettant la gestion de traitements par le navigateur WWW) parmi lesquelles :
• Les langages « script » comme JavaScript (principalement) ou VBScript (pour le navigateur Internet Explorer) ont permis d’écrire des programmes exécutables par les navigateurs WWW.
• AJAX (Asynchronous Javascript And XML) permet une optimisation de la gestion des traitements entre le client et le serveur (pour limiter les transferts sur le réseau), en augmentant la réactivité de l'application cliente, qui ne sollicite le serveur que pour les données dont l'application cliente a besoin.
• Applet JAVA (appliquette) sont des applications interprétables par le navigateur WWW, qui vont permettre la mise en œuvre de traitements clients.
• Flash, Flex est une solution populaire et propriétaire (société Adobe) qui a permis d'intégrer des traitements multimédias et fonctionnels au niveau des navigateurs WWW (un fichier d'extension .swf est traité par un applicatif « plugin » local Flash Player).
• et bien d'autres solutions comme JavaFX ou le « plugin » Silverlight …
Définition : un « PlugIn » est une application informatique autonome, qui interagit avec le navigateur WWW (ou d'autres applications) pour ajouter des fonctionnalités ; dans le domaine WWW. Les « PlugIns » ont pour rôle de permettre l'interopérabilité entre le navigateur WWW et d'autres applicatifs.
4. Illustration en programmation VBScript
a. Problème d'illustration
On souhaite connaître le résultat de
l'addition de 2 nombres saisis par l'utilisateur.
b. Démarche de conception
À partir de la spécification du
problème on note :
• le résultat sera celui de l'addition des deux nombres (variable RES réel)
• les données seront les deux nombres (variables N1 et N2 réel)
• le traitement sera (RES ← N1 + N2)
• le résultat sera celui de l'addition des deux nombres (variable RES réel)
• les données seront les deux nombres (variables N1 et N2 réel)
• le traitement sera (RES ← N1 + N2)
c. Application WWW en VBScript
• un formulaire <FORM NAME="N1plusN2"></FORM> dans le corps du document <BODY></BODY>
• un programme <SCRIPT LANGUAGE = "VBScript"></SCRIPT> dans l'en-tête du document <HEAD></HEAD>
1. L'interaction s'effectue à la validation du formulaire par un clic de l'utilisateur sur le bouton <INPUT TYPE="submit" VALUE="Calcul"> par l’appel de la fonction événementielle function N1plusN2_OnSubmit()
2. Le programme du script
a. reçoit les valeurs N1 et N2 (N1 = cdbl(N1plusN2.TextN1.value)) à partir des contrôles graphiques (<INPUT TYPE="text" NAME="TextN1">) du formulaire
b. effectue le traitement (RES = N1 + N2)
c. restitue le résultat (N1plusN2.TextRES.value = cstr(RES)) au contrôle graphique correspondant (<INPUT TYPE="text" NAME="TextRES" ReadOnly>)
d. Contrôles de saisie
Remarque : l'un des traitements indispensables,
correspondant à une application cliente WWW est le
contrôle de saisie des informations d'un
formulaire. En effet il n'est pas cohérent de
laisser un utilisateur entrer des informations
erronées au travers de l'interface cliente, et de
les envoyer pour traitement au serveur.
À la validation du formulaire <FORM NAME="Controle" par l'utilisateur <INPUT TYPE="submit" VALUE="Calcul"> la fonction événementielle function Controle_OnSubmit() est activée ; on contrôle l'intégrité des données N1 et N2 if not IsNumeric(Controle.TextN1.value) then et l'on invalide Controle_OnSubmit = false ou l'on valide Controle_OnSubmit = true la soumission des données du formulaire au programme serveur <FORM NAME="Controle" ACTION="fichier_serveur.php" METHOD=POST>
À la validation du formulaire <FORM NAME="Controle" par l'utilisateur <INPUT TYPE="submit" VALUE="Calcul"> la fonction événementielle function Controle_OnSubmit() est activée ; on contrôle l'intégrité des données N1 et N2 if not IsNumeric(Controle.TextN1.value) then et l'on invalide Controle_OnSubmit = false ou l'on valide Controle_OnSubmit = true la soumission des données du formulaire au programme serveur <FORM NAME="Controle" ACTION="fichier_serveur.php" METHOD=POST>
L'essentiel
Les architectures applicatives dans les environnements
client/serveur, répartissent les traitements sur le
client et sur le serveur, pour répondre de
façon satisfaisante aux besoins des utilisateurs du
système d'information dans un environnement de
réseaux informatiques.
Dans le cadre d'un environnement Internet utilisant des services WWW, on peut être amené à l'utiliser des traitements « client », pour répondre des besoins spécifiques aux applications locales (par exemple l'exploitation des ressources multimédias) ou définir une logique de contrôle de l'acquisition des données avant l'interaction avec le serveur.
Il existe de nombreuses technologies permettant le dynamisme client WWW (DHTML).
Dans le cadre d'un environnement Internet utilisant des services WWW, on peut être amené à l'utiliser des traitements « client », pour répondre des besoins spécifiques aux applications locales (par exemple l'exploitation des ressources multimédias) ou définir une logique de contrôle de l'acquisition des données avant l'interaction avec le serveur.
Il existe de nombreuses technologies permettant le dynamisme client WWW (DHTML).
Vous avez obtenu75%de bonnes réponses !