Haxe

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Haxe
Logo.

Apparu en 2005
Auteur Nicolas Cannasse
Influencé par Java, Actionscript
Site web Site officiel

Haxe est un langage de programmation et un compilateur open source multiplateforme qui permet de produire des applications et du code source pour de nombreuses plateformes différentes à partir d'un seul code source. Développé par Nicolas Cannasse et d'autres contributeurs, Haxe permet d’écrire la partie serveur et la partie client dans un même langage.

À cette fin, Haxe permet de :

  • créer des fichiers SWF qui utilisent les APIs pour les lecteurs Flash Player 6 à 14 ;
  • créer du code JavaScript utilisant les API DHTML des navigateurs, ainsi que des applications AJAX. Il est aussi possible d'utiliser des bibliothèques extérieures, tels que jQuery qui est directement inclus au téléchargement de Haxe ;
  • créer du bytecode pour la NekoVM qui peut être employé côté serveur (grâce à un plug-in Apache) ou empaqueté dans un exécutable autonome ;
  • créer du code PHP qui peut être déployé sur n’importe quel serveur supportant le langage PHP ;
  • créer du code et des applications C++ ;
  • créer du code et des applications Java ;
  • créer du code C# ;
  • créer du code Python.

Haxe permet donc d'assurer l’interopérabilité entre ces différentes plateformes en fournissant des bibliothèques communes.

Compilateur[modifier | modifier le code]

Le compilateur est écrit en OCaml. Il peut s'exécuter en mode serveur pour fournir la complétion de code sur les IDE et maintenir un cache pour accélérer la compilation.

Le compilateur Haxe effectue une optimisation du code. En voici quelques-unes :

  • Fonction "inline" ;
  • Élimination du code mort.

Les performances d'un application développée en Haxe dépendent de la plateforme cible.

Support des plateformes[modifier | modifier le code]

Sortie Plateforme Utilisation Depuis
AVM1 bytecode Adobe Flash Player 6+ Bureau, navigateur 2005 (alpha)
AVM2 bytecode Adobe Flash Player 9+, Adobe Air, Tamarin VM Bureau, navigateur, serveur 2005 (alpha)
ActionScript 3 code source Adobe Flash Player 9+ Bureau, navigateur 2007 (1.12)
C++ (hxcpp) code source Windows, Linux, Mac OS X Bureau, navigateur, CLI 2009 (2.04)
C++ code source Android, Apple iOS, Palm webOS Mobile 2009 (2.04)
C# code source Framework .NET Bureau, Mobile, Serveur 2012 (2.10)
Java code source Java Serveur, bureau 2012 (2.10)
JavaScript code source HTML 5, NodeJS, PhoneGap Serveur, bureau, navigateur, mobile 2006 (beta)
Neko bytecode NekoVM Serveur, bureau, CLI 2005 (alpha)
PHP code source PHP Serveur 2008 (2.0)
Python code source Python Bureau, web, CLI 2015 (3.2)

Voir aussi[modifier | modifier le code]

Liens internes[modifier | modifier le code]

Neko (langage)

Bibliographie[modifier | modifier le code]

  • (en) Franco Ponticelli et Lee McColl Sylvester, Professional Haxe and Neko Book, Wrox,‎ février 2008, 619 p. (ISBN 978-0-470-12213-6)
  • (en) Benjamin Danois, haXe 2 Beginner's Guide, PacktPublishing,‎ juillet 2011, 246 p. (ISBN 978-1-849512-56-5)

Liens externes[modifier | modifier le code]

  • (en) Haxe
  • (en) OpenFL, outil open source basé sur le langage Haxe

Références[modifier | modifier le code]