Forums : Les possiblités de la plateforme Mozilla

Aller à la discussion :  Plus récente Plus ancienne

Aller à la page :  1 2

# Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Utilisateur anonyme

Date : 02/04/2006 17:21

Bonjour, je souhaiterais développer un logiciel qui puisse tourner sous Windows ainsi que sous Linux. Ce serait un logiciel de gestions de cartes. Il existe un logiciel sous Win mais évidemment aucun sous Linux... Ayant toujours voulu moi aussi participer à la création de Logiciel Libre, je vais enfin essayer de m'y mettre... Voici mon cahier des charges :

* Objectif

  • Beau graphiquement que ce soit sous Windows ou Linux (j'adore GTK sous Ubuntu, mais je dois reconnaitre que les applis GTK sous Windows sont extrêmement moches... =/ )
  • Application gérant une base de données (elle est présentement sous SQL, mais je peux changer si c'est plus simple autrement) : Recherche de cartes, application de filtres pour trouver la bonne, etc...

Je voudrais pouvoir consulter la BDD avec connexion à un serveur et proposer une consultation Hors Ligne en rappatriant les infos (plusieurs milliers de cartes) : Dois-je utiliser une Base de données ? un fichier genre XML ?

  • Pouvoir créer un type de fichier avec sa propre extension qui rassemble des éléments comme la collection de l'utilisateur, etc...

Donc une appli. a priori assez simple dans ses actions...

* Connaissances actuelles

  • PHP, CSS et MySQL maitrisés assez correctement : En fait, je pourrais totalement développer mon "appli" sur un serveur mais si c'est un peu "système D" en créant des pages, en faisant passer des variables, etc... (la moitié de ce que je veux créer est d'ailleurs déjà sur mon site et je pourrais facilement développer le reste mais je voudrais m'orienter vers une application PC maintenant)
  • Algorithmiques (un peu touché au Pascal, Delphi, VB mais sommairement)
  • Sinon, je ne sais absolument pas si je dois utiliser un langage interprêté ou bien compilé...

* Idées actuelles après quelques recherches

  • Interface en XUL ? J'ai un peu le Wiki et je trouve que l'interface est vraiment belle puisqu'identique quelque soit l'OS utilisé : C'est beau sous Windows, et c'est beau sous Ubuntu (en utilisant le Thème Firefox GTK, j'ai même une intégration quasi parfaite avec Gnome).

De plus, la programmation de l'interface semble se rapprocher énormément de balises à la XHTML + CSS comme j'en ai l'habitude... c'est un plus indéniable... Et début 2007, le projet XULRunner semble d'ores et déjà très intéressant donc je pense que c'est un gage de perennité pour mon application (qui ne dépendra donc pas trop de Firefox et Mozilla...)

  • Langage ? Au début, j'aurais voulu écrire en Python car j'en ai entendu beaucoup de bien, seulement si j'ai bien compris, XUL ne supportera le Python que dans 6/7 mois ? Actuellement XUL ne supporte que le Javascript ?

C'est pas que ça me gêne de faire du Javascript mais j'ai toujours entendu parler de sa lourdeur... D'ailleurs je ne comprends pas un truc : Je n'ai installé aucune machine Java chez moi et pourtant Firefox marche ? Comprends pas trop, Firefox est-il codé en Java ou autres ? Et j'ai toujours vu qu'il fallait compiler un programme, qu'en est-il avec XUL et son langage ? comme ça ressemble à du langage Web, est-il traduit à chaque exécution en fait ?

Voilà, j'apprécierai toute l'aide que vous pourrez m'apporter ainsi que vos conseils... XUL est-il le bon choix pour mon projet ? Est-il actuellement dépendant d'un langage ? Et dans le futur ? De quoi aura-t-il besoin pour tourner ? (machine Java ?) Comment le logiciel se présenterait-il à la fin ? Comment le distribuer sous Windows ? sous Linux ?

Un grand merci à vous pour votre aide ! =)

PS : En espérant ne pas réitérer un genre de topic déjà X fois abordé ici... ^^"

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Paul Rouget

Date : 02/04/2006 18:23

Ce serait un logiciel de gestions de cartes.

De gestion de carte Géographique (PostGIS, Shp, wms, wfs ...) ? Si c'est le cas, contacte moi sur IRC, je bosse sur ce type de logiciel:

http://blog.sexylizard.org/?2005/08/09/9(..)

http://blog.sexylizard.org/?2006/02/28/6(..)

* Beau graphiquement que ce soit sous Windows ou Linux (j'adore GTK sous Ubuntu, mais je dois reconnaitre que les applis GTK sous Windows sont extrêmement moches... =/ )

À toi de faire un joli thème :)

* Application gérant une base de données (elle est présentement sous SQL, mais je peux changer si c'est plus simple autrement) : Recherche de cartes, application de filtres pour trouver la bonne, etc...

Tu peux en effet faire du SQL en installant les composants qu'il faut.

Je voudrais pouvoir consulter la BDD avec connexion à un serveur et proposer une consultation Hors Ligne en rappatriant les infos (plusieurs milliers de cartes) : Dois-je utiliser une Base de données ? un fichier genre XML ?

Tu peux opter pour n'importe qu'elle solution, c'est à toi de voir ce qui est le plus adapté en fonction de ton projet.

* Pouvoir créer un type de fichier avec sa propre extension qui rassemble des éléments comme la collection de l'utilisateur, etc...

Hum... je pense que c'est possible. Regarde ce que peut faire ce que l'on nomme les XBL.

* Sinon, je ne sais absolument pas si je dois utiliser un langage interprêté ou bien compilé...

Tu auras à faire du Javascript pour l'interaction avec le XUL. Ensuite si tu fais ce que l'on nomme des composants XPCom, tu pourras faire du python, ou du C++.

De plus, la programmation de l'interface semble se rapprocher énormément de balises à la XHTML + CSS comme j'en ai l'habitude... c'est un plus indéniable...

En effet. Dans des projets DHTML tu utilises: XHTML/CSS/JS. Dans Mozilla, tu remplaces le XHTML par le XUL :)

Et début 2007, le projet XULRunner semble d'ores et déjà très intéressant donc je pense que c'est un gage de perennité pour mon application (qui ne dépendra donc pas trop de Firefox et Mozilla...)

On est en 2006 et XulRunner est déjà bien stable (mais je pense que tu voulais parlé de 2006 ;p)

* Langage ? Au début, j'aurais voulu écrire en Python car j'en ai entendu beaucoup de bien, seulement si j'ai bien compris, XUL ne supportera le Python que dans 6/7 mois ? Actuellement XUL ne supporte que le Javascript ?

Oui... on pourrait faire du Python avec quelques acrobaties, mais je te conseille vraiment de regarder le JS.

C'est pas que ça me gêne de faire du Javascript mais j'ai toujours entendu parler de sa lourdeur...

C'est dut à la mauvaise utilisation des développeurs du JS, mais si tu utilises Firefox ou Thunderbird, dit toi bien que tout l'interface est codée avec du XUL et du JS, donc je peux t'assurer que bien utilisé, ce n'est pas lourd.

D'ailleurs je ne comprends pas un truc : Je n'ai installé aucune machine Java chez moi et pourtant Firefox marche ? Comprends pas trop, Firefox est-il codé en Java ou autres ? Et j'ai toujours vu qu'il fallait compiler un programme, qu'en est-il avec XUL et son langage ? comme ça ressemble à du langage Web, est-il traduit à chaque exécution en fait ?

Attention ! Java est différent de Javascript, ça n'a aucun rapport ! Rien a compiler si tu fais du XUL et du JS, tout est interprété par le coeur de Mozilla.

Voilà, j'apprécierai toute l'aide que vous pourrez m'apporter ainsi que vos conseils... XUL est-il le bon choix pour mon projet ?

Je pense, mais jetes un coup d'oeil à son compagnon "graphique", le SVG. Je pense que ton projet pourrait etre fait en XUL, en JS et en SVG.

Est-il actuellement dépendant d'un langage ? Et dans le futur ? De quoi aura-t-il besoin pour tourner ? (machine Java ?)

Tu n'as besoin *que* de Firefox ou XulRunner.

Comment le logiciel se présenterait-il à la fin ? Comment le distribuer sous Windows ? sous Linux ?

Tu peux complètement envisagé avec XulRunner de fournir une application très classique packagée comme un logiciel classic.

Voilà voilà :)

En espérant avoir été clair.

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Utilisateur anonyme

Date : 02/04/2006 20:01

Et bien tout d'abord merci pour ta réponse ;) Oui, tu as été plutôt clair car j'ai à peu près tout compris et c'est déjà pas mal.

En fait, c'est une gestion de cartes à la "Magic The Gathering" pour gérer une collection, etc...

Il semblerait donc que mon projet soit réalisable ainsi, je suis donc très enthousiaste ! =D

Je vais de ce pas faire des recherches sur le SVG dont tu me parles...

Sinon, étant un langage interprêté, tout le code source sera donc accessible est-ce exact ? Ce n'est pas que ça me gêne étant donné que je veux créer un logiciel sous GPL mais je me pose des questions sur les accès à ma BDD qui elles doivent être sécurisées... est-ce possible de protéger les adresses, login et mots de passes de connexion à ma base SQL ?

Merci.

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Paul Rouget

Date : 02/04/2006 22:03

HAAA ! STOP ! T'embrouille pas trop ... Le SVG c'est que si tu veux faire des cartes géographiques ;) Donc lache l'affaire pour le SVG.

XUL + JS, ça ira.

Sinon, oui, le code source sera accessible, mais si tu fais les choses proprement, il n'y aura pas de soucis. En général, la première fois que l'utilisateur lancera ton appli, tu lui demanderas son login et mot de passe que tu stockeras dans les préférences de cet utilisateur. Il y a un composant de Firefox fait exprès pour ça.

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Utilisateur anonyme

Date : 02/04/2006 23:12

Oki, effectivement je connaissais le SVG mais tu m'as mis un doute, je me suis dit que cet acronyme pouvait peut-être aussi désigner autre chose qu'un dessin vectoriel... ^^"

Donc avec mon XUL + JS je peux :

  • Faire une interface soignée et portable Windows/Linux
  • Me connecter à une BDD SQL
  • Ouvrir, Lire et Ecrire des fichiers de ma propre extension
  • Faire des opérations basiques d'applications, comme pour n'importe quel autre développement de logiciel : ouverture de boites de dialogue, boucles, fonctions,...
  • Distribuer mon appli. en stand-alone

Car ça a l'air si beau que je n'ose y croire... Pourquoi tout le monde ne développerait-il pas avec XUL + JS alors ? Pourquoi certains préfèrent wxWidgets pour être multi-plateformes ? C'est quand même assez moche... De même que les librairies GTK pour Win... Y-a-t-il un piège derrière cette façade si parfaite de : beauté, simplicité, portabilité ?

Si je peux réaliser tout ça, ben c'est exactement ce qu'il me faut et je vais pouvoir me lancer...

Un grand merci à toi...

PS : Concernant les accès SQL sécurisés, en fait je ne parlais pas d'un accès sécurisé de mon logiciel pour mes utilisateurs, mais juste empêcher les utilisateurs de voir mon login et mon mot de passe de ma base SQL actuellement hébergé sur le serveur de mon hébergeur... C'est que sinon un petit malin pourrait toujours s'y logger et détériorer cette BDD... =/

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : ballinette

Date : 03/04/2006 10:57

Raphael a écrit:

(...)
PS : Concernant les accès SQL sécurisés, en fait
je ne parlais pas d'un accès sécurisé de mon
logiciel pour mes utilisateurs, mais juste
empêcher les utilisateurs de voir mon login et mon
mot de passe de ma base SQL actuellement hébergé
sur le serveur de mon hébergeur... C'est que sinon
un petit malin pourrait toujours s'y logger et
détériorer cette BDD... =/

Euh... dans ce cas, si la BDD est hébergée sur un serveur distant (et donc pas sur la même machine que celle exécutant ton appli), je te conseille de passer plutôt par un service Web pour accéder aux données depuis ton appli XUL : tu développes côté serveur une petite appli en PHP (ou autre) qui se connecte à la BDD et renvoit les infos demandé dans un format XML que tu auras défini, et tu accèdes côté client à ce service avec l'objet XmlHttpRequest . ;)

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : laurentj

Date : 03/04/2006 11:10

Pourquoi tout le monde ne développerait-il pas avec XUL + JS alors ? Pourquoi certains préfèrent wxWidgets pour être multi-plateformes ? C'est quand même assez moche... De même que les librairies GTK pour Win... Y-a-t-il un piège derrière cette façade si parfaite de : beauté, simplicité, portabilité ?

non y a pas de piège. C'est tout simplement parce que la techno n'est pas encore assez connue (malgré son grand âge puisque ça date de 2000, car utilisée déjà à l'époque dans Netscape 6, même si c'était encore peu mature)

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Utilisateur anonyme

Date : 03/04/2006 11:32

ballinette > Ah c'est pas bête, c'est effectivement une piste à creuser... merci =)

laurentj > Donc c'est tout bon il semblerait, comment les développeurs travaillent-ils ? avec un éditeur de texte basique ? ou bien est-ce que l'IDE ThinG est assez propre et utilisé ?

Sinon, je débute un peu en XML... Il est donc possible de transformer une base de données SQL en un fichier XML ? Quels conséquences pour le traitement des données ? pour les Recherche, c'est toujours possible ? Et le temps de traitement ? Est-il augmenté ? Ma base contient environ 10 000 enregistrements pour info.

Dois-je privilégier cette technologie XML ou bien a-t-elle tout de même quelques défauts qui font que les bases de données SQL ou autres restent plus avantageuses dans certains cas ?

Sachant que mon But est que les gens aient les infos des cartes hors-ligne, et qu'ils puissent MAJ ces infos via connexion à la Base de données SQL stockée sur le serveur...

Encore merci à vous tous =)

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : laurentj

Date : 03/04/2006 13:29

ou bien est-ce que l'IDE ThinG est assez propre et utilisé ?

euh attention, y a xul et xul. Il y a le vrai xul, celui de Mozilla, et le "faux" xul, pâle copie du XUL de mozilla (y a même des langages que certains ont appelé XUL mais qui n'ont absolument pas la même grammaire...)

Bref, l'outil que tu designes n'est pas du tout fait pour faire du vrai XUL. (voir le wiki pour les outils de dev).

# Re: Quelques questions sur XUL et la programmation d'une application... (débutant inside ^^")

Envoyé par : Raphael

Date : 03/04/2006 16:21

Oki, donc le bon vieux éditeur de texte fera l'affaire apparemment... =)

Sinon, concernant la conversions SQL > XML, c'est bon, j'ai retrouvé dans un vieux bouquin un code impeccable pour le faire.

Mais maintenant, je me retrouve devant certaines questions liées à XML... car SQL, je savais rechercher, afficher, etc...

Mais XML... ?

  • Comment faire une recherche et afficher des résultats à partir d'un fichier XML ? J'ai un peu cherché sur Google, et les fonctions n'ont pas l'air vraiment simple, j'ai l'impression d'avoir perdu en facilité d'utilisation en passant de SQL à XML non ?
  • Mais ai-je vraiment besoin de faire une recherche ? En fait, il faudrait juste que je puisse appliquer des filtres et voir les résultats en temps réels, est-ce possible ?

En gros, imaginons que ma Base de données contiennent un jeu de 32 cartes classiques pour jouer à la bataille, à la contrée, etc...

Je voudrais pouvoir sélectionner des propriétés comme :

  • La couleur : Pique, carreau, coeur, trèfle
  • La valeur de la carte : 0, 2, 3 ,4 , 10 , 11, 14 ou 20 (et des comparaisons....)
  • Le nom : Valet, Dame, Roi, As,...

Cet exemple est très simple puisque peu de propriétés et peu d'enregistrements, mais c'est l'idée... Est-il possible qu'en fonction de ces "filtres" comme des radioboutons, des checkbox, des Dropdown, etc... je vois alors ma liste de résultat changer en "live" ? J'ai quelques problèmes de compréhension quant à la différence entre "Voir le Résultat d'une Recherche" et "Voir le Résultat d'application d'un Filtre"... le concept m'échappe un peu et la manière de faire un filtrage aussi.

Voilà, je ne sais trop comment procéder avec XML et avec XUL... J'aurais été sur une page Web, j'aurais fait un petit formulaire de Recherche, j'aurais renvoyé vers une page de Résultats sur laquelle à l'aide d'une petite requête SQL, j'aurais obtenu sans problèmes ma liste de cartes...

Mais en XML, je débute, ainsi qu'en programmation non Web... et j'avoue avoir quelques difficultés à aborder la chose... =/

Je vous remercie donc pour toute l'aide que vous pourrez m'apporter...

PS : Merci au modérateur d'avoir corriger mon lien web dans mon post précédent, je me suis à présent inscrit sur le forum, cela ne devrait donc plus se reproduire ^^ (Edit powaa).

EDIT : Est-ce que XUL / Javascript peut exécuter des requêtes SOAP ? Car une base de données existe déjà et utilise WSDL. Il faut apparemment implémenter des requêtes SOAP pour y avoir accès... Est-ce réalisable ?

Aller à la page :  1 2

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.