[Xulfr] Livres sur XUL et autres questions pour mieux se lancer

Laurent Jouanneau ljouanneau at gmail.com
Mer 21 Mai 23:00:04 CEST 2008


Bonjour

youx at free.fr a écrit :
> Bonjour,
> Xul m'intéresse beaucoup mais je n'ai pas encore franchi le pas qui 
> semble-t-il demande un investissement important pour le développeur 
> freelance que je suis : apprentissage, conversion des applications 
> existantes, dialogue avec le client pour justifier le choix 
> technologique, maintenance des applications etc...
> 
> Quelques questions me taraudent l'esprit :
> 
> *  Quels sont les (bons) bouquins prévus sur XUL et la programmation 
> avec Firefox 3.0 en particulier ?
> En effet, je suis vraiment étonné de voir que c'est la misère au niveau 
> ressources "construites" pour permettre au développeur de se lancer sur 
> cette techno : des bouts de tutoriel, quelques bouquins dont la moitié 
> sont critiqués (cf amazon) et l'autre datent sérieusement (je n'ai rien 
> trouvé coté livre sur les développements pour Firefox 2+, tout semble 
> s'arreter à Firefox 1.5 dans le meilleur des cas), la troisième moitié 
> correspondant à des titres en rupture de stock en version US.
> Bref, comment fait-on pour travailler professionnellement avec XUL, il y 
> a une porte secrète ou tous les tutoriaux adaptés aux dernières versions 
> de Gecko sont à jour et bien peaufinés ? Je sais, j'en demande beaucoup...

En effet, les bouquins commencent à dater. Mais il ne sont pas 
ininterressant dans la mesure où ils peuvent expliquer les principes 
globaux, l'architecture générale de Mozilla etc.. Cela reste toujours 
d'actualité. Après c'est vrai que ça parle peu ou pas du tout de 
XulRunner, que le système d'extension a changé depuis Firefox 1.0 etc..

Donc, les bouquins peuvent être interressant pour apprendre les 
généralités. Quant aux détails techniques, il faut aller sur 
developer.mozilla.org. Et sinon, il y a le forum sur XulFr.


> 
> *  En terme d'évolution de Gecko, comment jugez-vous les paliers 
> d'évolution de la plateforme : les nouveautés sont-elles bien exposées 
> et expliquées par Mozilla ou faut-il aller à la pêche aux infos pour les 
> incorporer dans vos projets ? Quels sont les "gros" manques à ce jour, 
> ou les partie fastidieuses d'un développement type ?

developer.mozilla.org

pour les gros manques ou parties fastidieuses, je ne sais pas. Il y en a 
? :-)

Ce qui manque c'est un bon IDE, mais coté technique, c'est plus des 
petits trucs agaçant un peu partout qu'un gros manque. Enfin il me 
semble. Ça fait bien longtemps que je ne suis plus débutant, et il y a 
peut être des trucs devenu évident pour moi qui peuvent ne pas l'être 
pour un débutant.

> 
> *  Coté intégration avec les librairies javascript que j'utilise 
> actuellement, quelles sont vos expériences en terme d'intégration de 
> jquery, prototype ? Y'a-t-il des possibilités pour profiter des bonnes 
> idées de ces frameworks javascript ? Ou bien est-ce pure hérésie ?

Je ne sais pas. Faut vérifier que ça fonctionne, mais ce n'est pas sûr, 
car il y a certainement des fonctionnalités de ces frameworks qui 
s'appuie sur des spécificités du DOM HTML, et qui n'existent pas dans le 
DOM XUL.

> 
> *  Coté maintenance d'une application, quelles sont vos expériences : 
> évolution d'une application, correction / amélioration pour une nouvelle 
> version de Gecko, déploiement chez le client ?

évolution deploiement. Pas pire qu'une autre techno. Avec le système de 
mise à jour automatique, je dirais même que c'est ce qu'on fait de mieux 
de nos jours non ? :-)

Pour la migration vers une nouvelle version de gecko, ça peut être 
fastidieu, quand il s'agit de passer à une nouvelle version majeure de 
gecko. En fait, tout dépend ce qu'utilise l'application comme API. Par 
exemple, entre Firefox 2 et Firefox 3, y a eu un gros changement sur 
toute l'API de stockage des bookmarks (nouveau système etc..). Si tu as 
fait un appli qui utilisait cette API, c'est sûr que tu vas avoir du 
boulot à ce niveau.



> 
> *  Coté code dynamique, que pensez-vous de la génération des templates 
> coté serveur, avec du php par exemple ? De même, quelles sont les
> "bonnes pratiques" pour interfacer une application xul sur un service 
> développé et orienté web (plateforme php dans mon cas) ?

Pour toutes ces questions, y a des exemples et des explications dans le 
wiki. Faut fouiller ;-)

> 
> *  Coté sources de données, n'est-il pas fastidieux d'utiliser du RDF ou 
> XML quand on a une belle base MySql toute prête à portée de clic ? 
> Comment procédez-vous à ce niveau : vous rajoutez une couche de 
> traduction pour utiliser un format natif de Mozilla, ou bien autre ?

génération du RDF à partir des données mysql, ça peut se faire aisement 
(surtout avec un framework comme Jelix coté serveur ;-)). Faut juste 
bien comprendre le RDF.

Sinon générer du RDF, du XML, c'est le même principe que générer une 
page HTML.  Tu donne l'url d'un RDF ou XML au template, à cet url tu as 
un script PHP qui génère le RDF/XML. Bref, que du classique.

Dans Gecko 1.9, les templates XUL acceptent maintenant n'importe quel 
format XML comme source de donnée, ainsi qu'une base sqlite. Et tu peux 
aussi te faire ton propre "driver" de source de donnée. Donc si tu veux 
avoir une base mysql comme source de donnée, tu peux (mais c'est un peu 
compliqué quand même, le moteur de template est assez complexe).


Laurent


Plus d'informations sur la liste de diffusion Xulfr