Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 24/11/2006 à 18:31:13 Sujet du message: Langage de programmation pour le client |
|
|
Postez ici vos avis concernant le choix du langage de programmation du logiciel client. |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 25/11/2006 à 14:16:38 Sujet du message: |
|
|
Dans ce premier message, je vais tenter de faire un inventaire de toutes les solutions qui s'offrent à nous. N'étant pas spécialiste de la question, il est tout à fait possible et même probable que j'ai omis certaines solutions ou commis des erreurs. Dans ce cas, vous êtes bien sûr invités à me les signaler, et à m'indiquer les corrections dans vos posts.
A) Langages généraux
La première catégorie de langages utilisables est celle des langages "généraux". Le projet consisterait alors alors à concevoir un logiciel complet s'occupant de tout, y compris de la gestion des envois et des réceptions de données sur internet. L'avantage réside dans une possible meilleure vitesse d'exécution du programme.
Les deux problèmes qui se posent alors sont ceux de la complexité du programme, et de sa portabilité sur les différentes plateformes. Cette dernière difficulté peut toutefois être contournée par l'utilisation de langages interprétés ou pseudo-compilés en byte-code comme Java par exemple, et pour lequel il existe des interpréteurs ou des machines virtuelles disponibles pour chacune de ces plateformes.
Je ne m'étendrait pas davantage sur cette première catégorie tant le nombre de langages candidats est vaste.
B) Langages liés au web
La deuxième catégorie de langages est celle qui permet de réaliser des programmes s'exécutant dans l'environnement du navigateur. Tout ce qui a trait à la communication vers et en provenance de l'internet est alors pris en charge par lui. Les langages disponibles sont les suivants: (les liens qui suivent pointent vers des articles de wikipedia)
- Flash : http://fr.wikipedia.org/wiki/Adobe_Flash
- JavaScript / JScript : http://fr.wikipedia.org/wiki/Javascript
- Java : http://fr.wikipedia.org/wiki/Java_%28langage%29
et peut-être aussi :(mais ces langages sont semble-t-il en cours de développement)
- Xul : http://fr.wikipedia.org/wiki/Xul
- XAML : http://fr.wikipedia.org/wiki/XAML
Chacun d'eux possède des avantages et des inconvénients :
libre / propriétaire
langage pseudo-compilé / interprété (+lent / +facile à maintenir)
bien connu / peu connu (difficile de programmer si on ne connait pas !)
opérationnel et fiable / en cours de développement
portables/spécifique à une plateforme
J'attends vos réactions et vos réflexions concernant ce choix. |
|
Revenir en haut de page |
|
 |
wisim

Inscrit le: 26 Nov 2006 Messages: 2022 Localisation: Ici et maintenant
|
Posté le: 26/11/2006 à 14:17:24 Sujet du message: |
|
|
Je me place en utilisateur et je me dis :
- Il faut que je puisse jouer sans avoir à rajouter un soft, pluging ou autre truc trop complexe (pour l'install de flash, ca va encore).
- Il faut que ca puisse tourner les les 3 OS principaux (Windows, MacOS et Linux)
- Il faut que ca puisse tourner sur les principaux navigateurs (Firefox, Internet Explorer, Safari, konqueror, Opera, ...)
Si on réussi bien notre coup, il n'y aura que la partie présentation côté client. Donc très simple pour une première version.
J'ai en tête 3 outils fréquements utilisés : JavaScript, Java et Flash.
Pour le premier, je pense qu'on a les compétences, pour les 2 autres, a discuter. |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 26/11/2006 à 14:39:04 Sujet du message: |
|
|
wisim a écrit: |
J'ai en tête 3 outils fréquements utilisés : JavaScript, Java et Flash.
Pour le premier, je pense qu'on a les compétences, pour les 2 autres, a discuter. |
Je suis du même avis. Je mettrais toutefois un bémol pour flash qui est un format propriétaire (même si du point de vue pratique ça ne nous pose pas de problème).
Il faut aussi penser que nous aurons besoin de réaliser des affichages graphiques. JavaScript en est capable depuis assez récemment grace au images SVG et à l'objet "canvas". Par contre, ces deux éléments ne sont pas forcément acceptés par tous les navigateurs.
http://fr.wikipedia.org/wiki/Svg
http://fr.wikipedia.org/wiki/Canvas_%28balise_html%29 |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 30/11/2006 à 19:42:07 Sujet du message: Le chameau ? |
|
|
Apparemment, il semblerait qu'un plug-in pour exécuter des applets écrits en Caml soit disponible pour certains navigateurs.
Nous aurions là un autre candidat intéressant pour le langage de programmation du client.
Avantages :
- c'est un langage compilé en byte-code, donc rapide.
- c'est un langage complètement libre et dont les outils (compilateurs, débogueur...) sont disponibles pour toutes sortes de plate-formes.
- c'est un langage mis au point par des français ! (l'INRIA)
 |
|
Revenir en haut de page |
|
 |
wisim

Inscrit le: 26 Nov 2006 Messages: 2022 Localisation: Ici et maintenant
|
Posté le: 30/11/2006 à 20:06:52 Sujet du message: |
|
|
Ami(e)s de la parenthèse bonsoir ...
Oui, je tiens à préciser que Caml (comme Lisp son ainé) un langage avec des parenthèses partout partout partout. T'en veux plus, y en a encore
DeLaval, je ne pourrais pas t'aider sur ce point, j'ai court-circuité l'année où on enseignait le Caml (j'avais déjà fait du Lisp et du Prologue). Je suis directement passé sur Java.
Le Caml, c'est juste pour le fun, ou tu as une idée bien précise  |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 30/11/2006 à 20:19:56 Sujet du message: |
|
|
C'est surtout pour le fun.
Mais les parenthèses, y en a pas tant que ça en Caml, il me semble. (j'en ai jamais vraiment fait moi non plus, j'ai juste un peu regardé, mais je m'étais dit que ce serait une bonne occasion de m'y mettre pour de bon)
Et t'as aussi fait du prolog ? (Français, lui aussi !)
J'ai aussi un peu touché à celui-là mais guère plus.
Quelle joie de découvrir de nouveaux paradigmes (pour ceux qui ne le connaissent pas, voilà un nouveau mot à apprendre : http://fr.wikipedia.org/wiki/Paradigme) de programmation.
Plus sérieusement, je l'ai cité plus pour mémoire qu'autre chose. Il est toutefois certain que c'est un langage aux caractéristiques intéressantes, mais qui n'est sans doute pas suffisamment répandu pour pouvoir nous convenir réellement. |
|
Revenir en haut de page |
|
 |
wisim

Inscrit le: 26 Nov 2006 Messages: 2022 Localisation: Ici et maintenant
|
Posté le: 30/11/2006 à 20:57:25 Sujet du message: |
|
|
Sans rentrer dans le détail, il y a peut-être un poil moins de parenthèses que dans Lisp. Je te souhaite un bon courage, perso, ca ne me tente plus.
D'autant que Lisp et Caml sont des langages qui ont un réel intérêt pour l'intelligence artificiel. Ici, on veut juste montrer au skipper quel est la vitesse obtenue à une voilure et un cap donnés.
Donc si je me rappelle, ce topic concerne le langage pour le poste client.
Mmmmhhh.
JavaScript me semble pas si mal pour un premier jet.
- il est compris par presque tous les browsers (navigateurs pouvaient ici porté à confusion ).
- très répendu et assez simple pour l'ensemble des programmeurs.
- débugable facilement (et par les débugers de browsers, et par programmeurs).
Vous en pensez quoi ?
Oups, j'ai tout faux, c'est pas dans ce topic mais 2 topics + haut  |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 30/11/2006 à 21:10:31 Sujet du message: |
|
|
Je suis plutôt d'accord avec JavaScript.
Le seul point qui restait à vérifier, c'était la question de l'affichage graphique.
Comme je l'ai déjà dit, les objets <SVG> et <CANVAS> (sur certains navigateurs seulement) permettent désormais à JavaScript d'avoir cette fonctionnalité.
Personnellement, c'est le choix que je ferais, et pour tout dire, c'était celui auquel j'avais pensé au départ.
(Juste pour info : Caml, il me semble n'est pas du tout réservé à l'IA. Je crois d'ailleurs qu' E-mule a été programmé dans ce langage) |
|
Revenir en haut de page |
|
 |
Keep coule

Inscrit le: 26 Nov 2006 Messages: 897 Localisation: Manche
|
Posté le: 01/12/2006 à 23:01:21 Sujet du message: |
|
|
Et le Turbo Pascal , ça ne vous tente pas des fois...  |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 02/12/2006 à 00:06:07 Sujet du message: |
|
|
Keep coule a écrit: | Et le Turbo Pascal , ça ne vous tente pas des fois...  |
Sacré farceur ! |
|
Revenir en haut de page |
|
 |
soufriere

Inscrit le: 02 Déc 2006 Messages: 8588 Localisation: toulouse
|
Posté le: 05/12/2006 à 20:24:27 Sujet du message: |
|
|
Bon, je réponds même si ma réponse ne va pas apporter grand chose :
entre les langages proposés, j'ai une petite péférence pour java tout simplement parce que c'est le seul que je connais un peu... et notamment cas API graphiques swing) mais ce n'est pas vraiment un argument valable.
Par contre, j'ai une question. javascript ressembl-t-il beaucoup à java ou pas du tout ? |
|
Revenir en haut de page |
|
 |
DeLaval Administrateur - Site Admin

Inscrit le: 23 Nov 2006 Messages: 1328 Localisation: LAVAL (évidemment!)
|
Posté le: 05/12/2006 à 20:56:44 Sujet du message: |
|
|
JavaScript, d'après ce que je sait ressemble à Java.
Sa syntaxe est assez proche, d'où la ressemblance de nom. (Tu peux voir un peu de JavaScript dans le code source du "fichier du poids vert" que j'ai mis en ligne, cf. le forum essais en cours)
Par contre, c'est un langage qui est interprété et non compilé (ou pseudo-compilé), donc plus lent à l'exécution.
Java est donc plus performant.
La proposition de choisir JavaScript a été faite pour la simple raison que ce langage paraissait pouvoir convenir, compte tenu de la faible puissance de calcul requise par le client, et parce que les deux seuls programmeurs déclarés de la BDS à l'époque (Wisim et moi même) se sentaient plus à l'aise qu'avec Java.
En ce qui me concerne je n'ai jamais fait de Java.
Ces raisons ne sont donc pas hyper valables non plus.
En tous les cas, le débat reste ouvert. |
|
Revenir en haut de page |
|
 |
wisim

Inscrit le: 26 Nov 2006 Messages: 2022 Localisation: Ici et maintenant
|
Posté le: 05/12/2006 à 23:38:44 Sujet du message: |
|
|
Java est un intermédiaire entre le C++ et le JavaScript. Ces 3 langages sont extremement ressemblant, avec +/- de légèreté.
Pour résumer (avec de très gros court-circuit, mais ca va y a pas de puristes ) :
- Java est bien moins contraignant que le C++ et permet de faire des applets pour les navigateurs (IE, Firefox, ...). L'étendu des possibilité sont énormes, de la simple applet jusqu'à l'intégration d'applications dans le navigateur.
- JavaScript est encore plus simple et permet de faire des opérations en 2 coups de cuillères à pots (la programmation objet n'est pas obligatoire). Bien évidemment, il ne permet pas tout ce que peu faire Java. Reste a savoir ce que l'on veut vraiement faire.
Je connais les 2 langages, mais ca fait un petit moment que je n'ai plus fait de programmes avec.
Dans les 2 cas (java et javascript) il sera nécessaire de faire une matrice de fonctionnement avec les différents OS et navigateurs. Je pense particulièrement aux OS Windows, MacOS, Linux et aux navigateurs Internet Explorer, Firefox, Opéra et Safari. |
|
Revenir en haut de page |
|
 |
archibal
Inscrit le: 27 Nov 2006 Messages: 39 Localisation: Pyrénées Atlantiques et BDR
|
Posté le: 07/12/2006 à 18:32:11 Sujet du message: |
|
|
Apres la Bande du sud
Vla ti la bande des fous
Si on m'avait dit la premiere fois que j'ai mis mon auguste derriere dans un optimiste,
que :
je devrais faire un Prologue,
danser une Java ,
prendre des flashs ,
mettre un turbo a mon pascal
et que tout ca C++
Je vous le dis , moi je serais resté avec ma bouée canard et mon tuba.
Bon tout ca c bien mais il va falloir que j'achete une fabrique de cierges avec vos histoires
Bon courage mais la je peux meme pas vous aider je retourne a ma truelle  _________________ Hier c'est le passé, demain c'est le futur et aujourd'hui c'est "un cadeau", c'est pour ca qu'on l'appelle présent.!!! La ptit mouette |
|
Revenir en haut de page |
|
 |
|