Soutenez-nous

Haxe 3.0 : prochain langage open source universel ?
Il permet de compiler en JavaScript, Flash, PHP, C++, C# et Java

Les rubriques (actu, forums, tutos) de Développez
Réseaux sociaux


 Discussion forum

Le , par imikado, Rédacteur
Je viens de publier un billet de blog sur ce langage à part qu'est Haxe, sa version 3.0 est parue en mai dernier.

Haxe est un langage de programmation open source pouvant être compilé pour les langages populaires comme JavaScript, Flash, PHP, C++, C# ou Java, ce qui suppose qu’une application Haxe pourra soutenir iOS, Android, Windows Phone et autres.

Le but de Haxe est de proposer un langage universel, permettant de « coder une fois » et déployer son application partout.

Le langage vante sa syntaxe très proche de « Java, PHP, JavaScript ou ActionScript », ses fonctionnalités modernes que n’importe « quel langage de programmation devrait avoir de nos jours », et son typage strict permettant d’intercepter les erreurs rapidement.

L’intérêt est donc là : un langage à apprendre pour développer tout type d’application différente. D’après moi, « si les écoles d’informatique pouvaient enseigner ce langage, cela donnerait une meilleure valeur ajoutée à leurs élèves qui deviendraient de fait plus polyvalents. »

Le billet : http://blog.developpez.com/ducodeetd...out-ou-presque

Le site: http://haxe.org/

Et vous :

Connaissez-vous Haxe ? Que pensez-vous de cette plateforme ?

Allez-vous l’adopter ? Si non, pourquoi ?


 Poster une réponse

Avatar de yosadi yosadi
Invité de passage
le 26/07/2013 16:33
Ca a l'air plutôt intéressant, je vais tester mais j'avoue que le fait d'avoir un seul langage regroupé est certes pertinant et intéressant.
Bien entendu, les possibilités ne seront jamais aussi étendus que dans un langage dédié mais avec une forte communauté peut etre que cela pour faire l'affaire et comblé certaines lacunes.

En tout cas, je pense que Haxe est à suivre de près.

C'est vrai, qui n'a jamais rêver de faire une application multi os avec un seul langage sans passer forcément par la difficulté du C/C++ ou la lourdeur du java.

A tester...
Avatar de dk dk
Membre habitué
le 26/07/2013 16:35
C'est l'outil développé et utilisé par motion-twin si je ne m'abuse ? J'ai jamais vraiment compris quelle était la valeur ajoutée pour eux. Pourquoi avoir créé un langage au lieu de faire de la génération à partir du c++ ou java ? (voire lisp & consorts). Et si le but c'est de coder une seule fois et déployer dans plusieurs contextes, il me semble que le java ne s'en sort pas trop mal de ce côté là.

En tout cas non, ce n'est pas un langage que j'utiliserai, parce que ce n'est pas un standard, et si on s'en sert pour générer du code dans des domaines complexes, il y aura forcément des problèmes qui nécessiteront un niveau de compétence élevé dans le langage concerné, ne serait-ce que pour une question d'optimisation. Donc autant directement coder dans le dit langage.
Avatar de schglurps schglurps
Invité régulier
le 26/07/2013 17:01
Intéressant. Au lieu d'adopter l'approche Java : "Write once, run everywhere", la philisophie Haxe est plutôt : "Write once, target any language" (enfin presque). Je suppose qu'Haxe cible surtout ceux qui développent à longueur de journée des applis pour smartphones ou des sites HTML 5 : il permet de se passer d'outils tels que CoffeeScript, certains écueils (surtout par rapport au Javascript) sont évités grâce au type strict et un même langage permet d'à peu près tout faire.

A suivre !
Avatar de imikado imikado
Rédacteur
le 26/07/2013 17:08
Citation Envoyé par dk  Voir le message
C'est l'outil développé et utilisé par motion-twin si je ne m'abuse ? J'ai jamais vraiment compris quelle était la valeur ajoutée pour eux. Pourquoi avoir créé un langage au lieu de faire de la génération à partir du c++ ou java ? (voire lisp & consorts). Et si le but c'est de coder une seule fois et déployer dans plusieurs contextes, il me semble que le java ne s'en sort pas trop mal de ce côté là.

1. java ne permet pas de générer du flash
2. haxe permet egalement de générer du java
3. compiler vers du c++ peut donner un binaire très performant

Citation Envoyé par dk  Voir le message
En tout cas non, ce n'est pas un langage que j'utiliserai, parce que ce n'est pas un standard, et si on s'en sert pour générer du code dans des domaines complexes, il y aura forcément des problèmes qui nécessiteront un niveau de compétence élevé dans le langage concerné, ne serait-ce que pour une question d'optimisation. Donc autant directement coder dans le dit langage.

Une connaissance minimum dans le langage compilé final peut etre en effet un plus et permettre d'optimiser si nécessaire le code généré

N'oublions pas que le projet Haxe est utilisé depuis quelques années maintenant, et on déjà du essuyer des plâtres
Avatar de olreak olreak
Membre éclairé
le 26/07/2013 17:15
Je me méfie des langages qui prétendent permettre de tout faire. Fonctionnellement, tous les langages permettent de tout faire (quelques exceptions peut-être ?)

Chaque langage a ses spécialités, ses bibliothèques standards, ses frameworks... et c'est l'avantage d'avoir une multitude de langages.

Haxe possède-t-il un framework plus ou moins complet du style Qt/.Net/Java ? Sinon est-ce à dire que pour pouvoir réellement cibler tous les langages il faut nécessairement tout recoder depuis le langage de base?

Bref, pourquoi pas, à essayer pour voir les avantages et les limites.
Avatar de Nova Stuff Nova Stuff
Membre du Club
le 26/07/2013 17:23
Intéressant comme concept, mais perso je suis mal à l'aise avec ceci :
« si les écoles d’informatique pouvaient enseigner ce langage, cela donnerait une meilleure valeur ajoutée à leurs élèves qui deviendraient de fait plus polyvalents. »

Je ne suis vraiment pas d'accord avec cette citation.. Il vaut mieux, je pense, apprendre et pratiquer beaucoup d’algorithmie en plus des bases des langages très utilisés (PHP,C++,Java, etc..) en entreprise. A partir de là, en développant pas mal de projets perso/professionnels on est déjà suffisamment polyvalent pour appréhender un certain nombre de langage.

Après, je ne dis pas que Haxe n'a pas sa place dans un cursus, mais quand t'as déjà bouffé les langages que j'ai cité dans mon précédent paragraphe, pourquoi tu voudrais te retaper un cours qui t'apprends quelque chose de très ressemblant et qui n'a pour utilité que de compiler dans un langage que tu as déjà appris ? Je ne vois pas non plus en quoi cela donnerais une meilleure valeur ajoutée aux élèves sortants.

Allez-vous l’adopter ? Si non, pourquoi ?

Je le testerais (par curiosité comme dit plus haut) mais je ne suis pas convaincu par son idéologie.
Avatar de imikado imikado
Rédacteur
le 26/07/2013 17:26
Citation Envoyé par olreak  Voir le message
Je me méfie des langages qui prétendent permettre de tout faire. Fonctionnellement, tous les langages permettent de tout faire (quelques exceptions peut-être ?)

Chaque langage a ses spécialités, ses bibliothèques standards, ses frameworks... et c'est l'avantage d'avoir une multitude de langages.

Haxe possède-t-il un framework plus ou moins complet du style Qt/.Net/Java ? Sinon est-ce à dire que pour pouvoir réellement cibler tous les langages il faut nécessairement tout recoder depuis le langage de base?

Bref, pourquoi pas, à essayer pour voir les avantages et les limites.

Remarque pertinentes, pour flash par exemple on aura accès aux bibliothèques natives de flash
Pour c# et .net je ne sais pas si il est possible, et comment il est possible de pluger les deux... c'est à tester/ regarder de plus près le code généré

Concernant php, il doit être assez simple de bénéficier de la puissance de framework tel que Zend Framework, Synfony ou MkFramework
Avatar de SylvainPV SylvainPV
Expert Confirmé
le 26/07/2013 17:30
J'ai regardé un peu la syntaxe (http://haxe.org/doc/snip/arraymapfilter)
ça me fait énormément penser à du Javascript, ce qui ne me déplaît pas. Par contre je ne comprends pas une chose, ils mettent en avant sur leur page d'accueil le typage fort, et le premier snippet que je vois est rempli de var
Avatar de imikado imikado
Rédacteur
le 26/07/2013 17:33
Citation Envoyé par Nova Stuff  Voir le message
Je ne suis vraiment pas d'accord avec cette citation.. Il vaut mieux, je pense, apprendre et pratiquer beaucoup d’algorithmie en plus des bases des langages très utilisés (PHP,C++,Java, etc..) en entreprise. A partir de là, en développant pas mal de projets perso/professionnels on est déjà suffisamment polyvalent pour appréhender un certain nombre de langage.

Je suis d'accord en théorie, mais les différences de syntaxe, mode de programmation et règles (comme la portée des variables...) font que beaucoup d'élèves/jeunes diplomés s’emmêlent les pinceaux en pratique.
Il leur serait plus simple d'apprendre un voir deux langages mais de bien les maitriser

Citation Envoyé par Nova Stuff  Voir le message
Après, je ne dis pas que Haxe n'a pas sa place dans un cursus, mais quand t'as déjà bouffé les langages que j'ai cité dans mon précédent paragraphe, pourquoi tu voudrais te retaper un cours qui t'apprends quelque chose de très ressemblant et qui n'a pour utilité que de compiler dans un langage que tu as déjà appris ? Je ne vois pas non plus en quoi cela donnerais une meilleure valeur ajoutée aux élèves sortants.

La polyvalence des langages compilables: il est rare de trouver des profils qui connaissent du php, du c++/c# et de l'actionscript

Citation Envoyé par Nova Stuff  Voir le message
Je le testerais (par curiosité comme dit plus haut) mais je ne suis pas convaincu par son idéologie.

ce sera toujours un plus pour votre curiosité intellectuelle
Avatar de Kearz Kearz
Membre Expert
le 26/07/2013 17:43
C'est l'outil développé et utilisé par motion-twin si je ne m'abuse ? J'ai jamais vraiment compris quelle était la valeur ajoutée pour eux. Pourquoi avoir créé un langage au lieu de faire de la génération à partir du c++ ou java ? (voire lisp & consorts). Et si le but c'est de coder une seule fois et déployer dans plusieurs contextes, il me semble que le java ne s'en sort pas trop mal de ce côté là.

C'est le langage utilisé par motion-twin mais celui qui a créé le langage ne fait plus partie de motion-twin il me semble. Le développement de ce langage doit donc se faire ailleurs.
Je pense que c'est surtout orienté jeu, la valeur ajouté pour eux c'est d'avoir des jeux avec l'HTML5, du flash, du JS, etc. En codant avec un seul langage pour avoir un jeu = 1 ou 2 développeurs, pas plus.

Personnellement, je me suis penché sur le langage (au moins jusqu'au HelloWorld) mais par manque de "vrai" IDE pour le langage, de temps et de "vrai" tutoriel j'ai abandonné.
Maintenant, je pense que l'idée n'est pas bête. Après est-ce que ça à d'autre intérêt que pour des jeux web?
Offres d'emploi IT
INGENIEUR DEVELOPPEMENT JAVA/J2EE (H/F)
CDI
ITESOFT - Languedoc Roussillon - Aimargues (30470)
Parue le 23/04/2014
Ingénieur développement en apprentissage
Alternance
Mairie de Lille - Nord Pas-de-Calais - Lille (59000)
Parue le 18/04/2014
H/F Administrateur bases de données Oracle
CDI
D&B SELECTION - Provence Alpes Côte d'Azur - AIX EN PROVENCE
Parue le 09/04/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula