website.Solutions (Accueil)
[sommaire]
  1. XML
  2. Java, EcmaScript
  3. PHP
  4. Serveur Web
  5. PDF Writer
[connexe]
[vocabulaire]
[logiciel]
• Technologies avancées :: introduction
Vous voulez voir votre site Web prendre de l'ampleur? comporter plus d'informations? posséder un contenu plus dynamique? offrir de nouvelles fonctionnalités avancées? Il vous faut utiliser les technologies avancées présentes sur le Web! Attention, la route sera longue pour tout maîtriser, mais le résultat sans nul doute impressionnant...
››» XML
:: Quel intérêt? Outre le nom d'un langage se voulant le digne successeur du SGML, XML pour eXtensible Markup Language est le symbole d'une immense famille de technologies qui s'étend sur le Web et même sur l'informatique plus généralement. En reprenant la structure en arborescence, la grammaire stricte du langage à balises (comme par exemple le XHTML) et en ajoutant le principe de séparation de forme et contenu, le XML est une technologie qui peut être utilisée partout pour le stockage, traitement, transformation, etc. de données. Pratiquement, la séparation forme/contenu signifie que les balises d'un document xml n'ont a priori aucune signification! Ce document est en fait accompagné d'autres composants (dérivant du xml) qui vont ajouter du sens, et à terme faire en sorte qu'il soit exploitable par un utilisateur. On entre dans l'ère du Web sémantique!
:: Un exemple... L'architecture du document xml doit toujours respecter la grammaire de base et donc présenter une arborescence. Comme indiqué pour les documents XHTML, vous inscrire la séquence suivante <?xml version="1.0" encoding="ISO-8859-1"?>. Cependant, à ce niveau on peut avoir l'impression d'être déboussolé: beaucoup de libertés sont offertes et on ne sait pas vraiment ce qu'il peut en sortir! On va traiter un exemple qui nous intéresse ici pour un site Web: la création automatique de pages Web à partir d'un contenu XML (ce n'est qu'une petite facette des applications possibles).
[C'est avec cette technique que ce guide a été fabriqué...]
  1. Dans un premier temps, il faut déterminer la structure d'un archétype de document XML: savoir comments s'organisent les balises; quels sont les éléments parents, enfants; les attributs qu'ils peuvent avoir; quels noms utiliser!
    [Essayez d'être explicite à ce niveau pour que les documents xml soient facilement compréhensibles... mais évitez les éléments trop longs: la taille des fichiers XML augmente d'autant.]
  2. Dans un deuxième temps, vous devez savoir (de façon la plus précise possible) à quoi doivent ressembler les pages Web générées. Vous pouvez fabriquer, pour cette étape, un prototype de page Web: une sorte de modèle.
  3. Il faut ensuite écrire le document servant à la transformation du document XML. On va utiliser le langage XSL qui peut réaliser des transformations vers différents formats dont les pages Web. C'est là qu'il va falloir plonger les mains dans la mécanique: les transformations XSLT eXtensible Stylesheet Language Transform se font via le langage XSL qui demande à être compris et maîtrisé.
  4. Enfin, il faut effectuer la transformation pour obtenir le document généré de façon tangible. Plusieurs techniques existent, on peut:
    • employer le moteur de rendu développé par Microsoft.
    • passer par l'intermédiaire du composant Apache nommé Xalan.
Pour vous faciliter la maîtrise de cette puissante technique, vous pouvez explorer le dossier et rechercher les documents .xml et .xsl qui ont servi à la fabrication de ce guide. Par ailleurs, comme pour le XHTML, le W3 Consortium met à jour des recommandations sur le langage XSL: vous pourrez trouver toutes les richesses du langage...
Programmation Java, EcmaScript...
››» Java, EcmaScript
:: C'est quoi Java? Le langage Java a été fondé en 1995. Il était d'abord voué à équiper tous les appareils électroniques (électroménagers, vidéo, communiquants, etc.), mais a dépassé les prévisions et il s'est très vite implanté dans la micro-informatique classique pour deux raisons essentielles. D'abord, le Java est une évolution importante et positive d'un langage déjà existant: le C++ (très utilisé); ensuite, toute la technologique Java se veut portable dans le sens où un seul code source suffit pour que le programme fabriqué fonctionne sur n'importe quelle plate-forme (équipée d'une machine virtuelle Java).
[Contrairement au XHTML, par exemple, la programmation d'un logiciel est normalement spécifique à un système d'exploitation... Java casse cette règle.]
:: Et pour quoi faire? Vous avez déjà sans doute butiné des sites où un petit programme Java (applet) était inséré pour faciliter la navigation, ajouter une fonctionnalité, créer un effet particulier... C'est en ça que Java est intéressant: il permet d'ajouter du contenu riche à votre site! Le langage XHTML permet de fabriquer du contenu statique pour les pages Web, avec les applets Java vous pouvez par exemple créer des simulations numériques où l'utilisateur peut modifier des paramètres en temps réels, augmenter l'intéraction avec l'utilisateur, fabriquer des effets visuels intéressants (en 2D et 3D), etc. Pour plus de renseignement vous trouverez de la documentation ainsi que tout l'environnement de développement nécessaire...
:: Et EcmaScript dans tout ça? L'engouement du Java a accouché d'un autre langage plus modeste et d'abord intégré dans le seul navigateur NetScape: c'était le JavaScript. S'en est suivie l'apparition du VisualBasicScript de Microsoft, une petite bataille eu lieu pour faire sortir vainqueur le JavaScript comme langage standard de scripts pour pages web... Il est désormais bien interprété par tout butineur qui se respecte. Une autorité de normalisation a revu et un peu corrigé le JavaScript, il s'appelle désormais le EcmaScript. Vous pouvez trouver plus d'informations dans des documentations ou sur Internet dans les nombreux sites dédiés à ce langage.
Un langage de script coté serveur!
››» PHP
:: C'est quoi? PHP ou Hypertext Preprocessor est un langage de script utilisé la plupart du temps pour fabriquer des pages Web XHTML. Attention, contrairement à EcmaScript, il s'agit de scripts éxécutés du coté du serveur web (qui contient tous les documents relatifs à votre site). Pour l'utilisateur, tout est caché: il ne perçoit que le résultat des opérations effectuées par l'éxécution du script. PHP est langage extrèmement puissant, versatile et compatible avec un nombre impressionnant de bases de données. Il est par ailleurs d'un abord très simple, et affiche un développement sur le Web fantastique: pour le nombre de sites utilisant cette technologie, mais aussi pour la communauté de programmeurs qui partage du code.
:: Pour quoi, et comment? Vous pouvez utiliser PHP pour fabriquer tout ou partie de votre site. Assurément, ces capacités ajouteront un aspect dynamique indéniable: en gérant les formulaires, en créant des pages selon les préférences des internautes, en proposant des forums et autre Wiki, etc.
[Il faut cependant passer par une petite étape de configuration et/ou installation d'un Serveur Web muni d'un interprétateur PHP, comme détaillé dans la section suivante.]
Pour en savoir plus, vous pouvez consulter la documentation (en Français!) exhaustive sur le sujet, elle est fréquemment mise à jour.
:: Outils tout prêts Pour vous éviter d'avoir à apprendre le langage dans ses moindres rouages, différents outils / paquet existent. Ils regroupent la plupart du temps de nombreuses fonctions très demandées et vous permettent ainsi de fabriquer un site dynamique (incluant forum, Wiki, dépêches, etc.) en conservant la possibilité de donner un aspect tout à fait personnel à l'habillage du site. Vous pouvez essayer Templeet et/ou DotClear.. pas de jaloux!
Pour donner vraiment vie à votre site Web!
››» Serveur Web
:: Comme dans un WebCafé? En fait, ça n'a rien à voir ;o) Un serveur Web est un logiciel fournissant la possibilité aux internautes de consulter un ou des sites Internet. Votre hébergeur en dispose forcément d'un. Mais vous pouvez aussi en installer un sur votre machine, même si vous ne compter pas héberger votre site à proprement parler. Pourquoi? Un serveur Web offre la possibilité de faire fonctionner des langages de scripts coté serveur (server side scripts), une base de données, des composants particuliers comme l'interprétation de document XML par exemple... Autant dire que les possibilités offertes sont immenses.
:: Comment ça se présente? Il s'agit d'un logiciel fonctionnant en arrière-plan et qui peut se voir adjoindre des composants divers. Le serveur Web le plus connu est sans nul doute Apache. Une foule d'éléments peut être configurée pour satisfaire vos attentes. Pour faire fonctionner le PHP, il faut installer une sorte de module; pour faire fonctionner une base de données (MySQL par exemple), c'est le même système. Pour faciliter la tâche, l'équipe de EasyPHP a fabriqué un paquet qui installe une configuration basique de l'ensemble Apache, PHP, MySQL et PHPMyAdminun (un outil de configuration).
:: Des curieux, ici? En plus du paquet de EasyPHP, vous pourrez trouver des composants plus spécialisés comme Cocoon (avec FOP), Batik, Xalan, etc. qui chacun offre une ou plusieurs fonctions avancées... Allez voir!
Une petite astuce!
››» PDF Writer
:: C'est quoi? C'est plus une astuce qu'une technologie en soi ;o) Parallèlement au HTML, langage intrinsèque au Web, s'est développé un autre langage ou format: le PDF pour Portable Document Format. Son immense intérêt, c'est de pouvoir transporter un document imprimable et consultable n'importe où (avec le logiciel adéquat: Adobe (Acrobat) Reader); par ailleurs, les documents sont généralement légers et agrandissables à souhait...
:: Comment en fabriquer? Si vous vous êtes poser la question, effectivement, à première vue il n'existe pas de fonction enregistrer en .pdf dans les logiciels classiques (sauf ceux signés Adobe). Et pourtant, on peut tout à fait légalement et gratuitement fabriquer des documents en pdf! Il faut réunir deux conditions:
  • le document doit être imprimable,
  • vous devez suivre les indications de configuration pour configurer votre système (une fois pour toute).
Après quoi, lorsque vous voudrez enregistrer en .pdf, vous choisirez plutôt la fonction imprimer (!) en veuillant à bien choisir l'imprimante virtuelle créée pour l'occasion.
[Le résultat n'est pas aussi parfait qu'avec un outil comme FOP dédié au PDF, mais cela reste très pratique... c'est ainsi qu'ont été fabriquées les versions imprimables du guide!]