22 mai
Publié par sebastien.bois dans Applications Web, Applications Internet riches (RIA), Méthodologie
Créer une interface web riche peut rapidement devenir une tâche très complexe mais il existe un truc pour simplifier la vie du concepteur et des développeurs de l’application! La rapidité de l’évolution de l’univers web et la multitude de ses implémentations fait en sorte que les artisans œuvrant dans ce domaine acquièrent de très grandes compétences mais avec des manières de faire très distinctes en fonction des technologies qu’ils ont utilisées.
Dans le cadre d’un projet, ces professionnels de l’informatique ont à développer, entre autres, des interfaces visuelles pour l’interaction de l’application avec les usagers. Ces interfaces rivalisent parfois de sophistication et de complexité car ils représentent une métaphore de la vision que les usagers ont de leur système de gestion de l’information. Il en découle que la composition visuelle des interfaces ne suit pas nécessairement les standards de base proposés par les fournisseurs d’éléments techniques de présentation. C’est là qu’entre en jeu la personnalisation de ces éléments visuels. Et c’est à ce moment que les forces des développeurs, au lieu de créer une synergie, peuvent créer une cacophonie technologique susceptible de consommer plus de temps que prévu dans un projet. Voilà pourquoi un conseil pour simplifier la vie du concepteur et des développeurs de l’application peut être très utile!
Une interface web riche se compose généralement de sections présentant un aspect général du système d’informations en offrant une série d’opérations ayant pour objectif de manipuler ces dites informations. Ces sections peuvent aussi se subdiviser en de plus petites sections présentant une ou plusieurs perspectives détaillées accessibles via des éléments de contrôle visuel. Une représentation visuelle particulière peut être employée pour signifier la création, la modification ou la consultation d’informations. Des opérations effectuées sur une section peuvent affecter la présentation d’une section parente, enfante ou latérale dans la hiérarchie. Une interface web riche, dans ces conditions, a toutes les caractéristiques classiques d’une interface résidante sur le poste client ou « client-serveur » complexe. En d’autres mots, ce n’est plus une simple page web comme il en existe des millions sur la toile mais une application complète.
Le conseil qui suit se décompose en une série facile d’activités qui consistent à :
Cette démarche en quatre étapes épargnera beaucoup de temps dans la réalisation d’un projet comportant une interface web riche. Il apportera une plus grande cohésion technique, ce qui diminuera le risque d’erreurs durant le développement initial et ultérieurement dans le cycle de vie de l’application. De plus, comme l’information de base pour la réalisation des composants visuels sera écrite, la communication de l’information sera efficace et uniforme peu importe le roulement avec les partenaires du projet. Finalement, cette démarche facilitera la synergie des forces entre les membres de l’équipe de développement et évitera une cacophonie technologique très coûteuse en effort dans un projet.
22 mai
Publié par nadine.stamand dans Web sémantique
Dans un site web dynamique reposant sur une base de données, les différentes pages décrivant le même type de données ont toutes la même adresse web. Ce qui permet de les différencier c’est seulement le paramètre, souvent un identifiant numérique, associé à l’URL.
Exemple d’une URL dynamique
http://www.mon-portail-touristique.com/portailregional.jsp?region=4
Ces pages sont très mal indexées par les moteurs de recherche qui s’intéressent surtout à la sémantique de nos pages. En effet, ceux-ci considèrent les informations suivantes par ordre d’importance :
Ces informations permettent au moteur d’indexation de conserver notre page web dans la bonne catégorie de son index et parfois même de tisser des liens sémantiques entre ces contenus et ceux d’autres sites.
Comment un moteur d’indexation, tel que Google, peut-il voir la différence fondamentale entre notre région numéro 4 et notre région numéro 5 s’il n’y a pas d’autres informations les décrivant? D’autre part, comment pourrait-il associer cette donnée avec d’autres informations de sa base de données si les mots-clés décrivant la région manquent !
C’est pourquoi des informations sémantiques plus pertinentes devraient être associées à l’adresse web. Par exemple, il est préférable de publier le mot-clé principal de la région dans l’URL, même si ce mot-clé n’est pas utilisé dans la requête (dans le script de la région c’est l’identifiant numérique qui est utilisé).
Exemple d’une URL dynamique et sémantique
http://www.mon-portail-touristique.com/portailregional.jsp?region=4&nom_region=Quebec
Ainsi, lorsque les ‘crawlers’ iront visiter notre site, ils verront distinctement la différence entre la région 4 et la région 5 et pourront identifier ce contenu avec des mots-clés.
Cependant, l’algorithme de l’engin d’indexation considèrera sans aucun doute que cette information est de second ordre si elle est placée dans un paramètre. Elle ne vaudra pas plus qu’un autre paramètre telle la langue ou le numéro de session ! Un autre facteur défavorisant l’indexation des pages paramétrées est leur nombre impressionnant et leur pertinence toute relative sur le web d’aujourd’hui. Enfin, considérons également le retard dans le développement des moteurs de recherche qui n’aide pas leur cause : celui par rapport à la capacité de gestion de ces url un peu spéciales.
Quoi qu’il en soit, c’est une vérité communément admise de nos jours qu’il vaut mieux avoir une url dans laquelle la sémantique n’est pas distribuée dans les paramètres, mais dans laquelle plutôt, la sémantique serait concentrée dans le chemin de la page et le nom de la page. On tente le plus possible de présenter une adresse de page qui serait sémantique en elle-même : les mots-clés font partie du nom de la page et de ses répertoires. Voici quelques exemples ou les mots-clés sont mis en avant et les identifiants numériques sont filtrés.
Exemple d’une URL sémantique (d’apparence non-dynamique)
http://www.mon-portail-touristique.com/portail-regional-quebec.html
Exemple d’une URL sémantique (d’apparence non-dynamique)
http://www.mon-portail-touristique.com/portail-regional/Quebec/
Comment s’opère cette magie : soit présenter plusieurs noms de pages statiques par un système dynamique opérant un seul script, i.e. une seule page qui les génèrent toutes ?
C’est la réécriture d’URL, aussi connue par les expressions anglophones ‘url rewriting’ ou ‘mod rewrite’.
Dans le prochain article, nous apprendrons comment réaliser cette magie à l’aide du module mod_rewrite de Apache.