Professional Documents
Culture Documents
OCaml
Índice
Sistema Multiplataforma
Arquitectura operativo
Soporte de la plataforma Licencia Compilador: GPLv2+
Soporte total
Soporte parcial
Biblioteca estándar: MIT2
Lenguaje [editar datos en Wikidata]
Véase también
Referencias
Enlaces externos
Arquitectura
El desarrollo de Haxe empezó en octubre de 2005 y la primera versión beta salió en febrero de 2006. Haxe 1.0 salió en abril de 2006,
que soporta aplicaciones de Adobe Flash.
Haxe es el sucesor de código abierto de ActionScript 2 compilador MTASC, también creado por Nicolas Canesse, y está liberado
bajo Licencia Pública General de GNU versión 2. Haxe tiene mucho en común con ActionScript 3. El compilador de Haxe está
desarrollado en el lenguajeOCaml. No es necesario saber OCaml para desarrollar aplicaciones en Haxe.
Para ayudar a aprovechar código existente, la comunidad de código libre ha creado conversores de código fuente experimentales para
los siguiente lenguajes:
ActionScript 3 a Haxe.
C# a Haxe.
La ventajas de usar Haxe incluyen:
Independencia de la plataforma
Un lenguaje de alto nivel totalmente desarrollado
Dispositivos que admiten solo C++
Soporte de la plataforma
El código Haxe puede ser compilado en bytecode para maquinas virtuales diferentes como las de Adobe Flash Player y Neko, y
puede generar código fuente para ActionScript 3, JavaScript, e incluye soporte experimental para C++ y C#. Esta estrategia de
compilar a múltiples códigos fuente de distintos lenguajes está inspirada por el paradigma escribe una vez, ejecuta en todas partes.
Esto también permite al programador elegir el mejor compilador para su trabajo.
Soporte total
Hasta 2012, Haxe pueden compilar en las siguientes plataformas con la API de la plataforma completa:
Soporte parcial
Hasta 2012, Haxe pueden compilar en las siguientes plataformas con cierta parte de la API de la plataforma:
C++
Windows
Linux
Mac OSX
iOS, (experimental)
Android, (experimental)
webOS, (experimental)
Java (experimental)
C# (experimental)
Lenguaje
El lenguaje Haxe es similar a ECMAScript, aunque casi ningún código ECMAScript se ejecutará en Haxe sin modificaciones. A
diferencia de ECMAScript, Haxe es un lenguaje compilado. Es un lenguaje de propósito general con programación orientada a
objetos, excepciones, e inferencia de tipos con parámetros de clase. Clases genéricas, reflectividad, iteradores, y programación
funcional están incorporados en la funcionalidad del lenguaje y librerías. A diferencia de otros lenguajes de programación, Haxe
contiene un sistema de tipos fuerte y dinámico. El compilador comprobará tipos implícitos y dará errores de compilación, pero eso
también permite al programador omitir la comprobación de tipos y se basan en el manejo dinámico de tipos de la plataforma de
destino.
Desde que Haxe tiene sus orígenes en AS3, todas las APIs de Flash pueden ser usadas, aunque Haxe requiere código mejor formado
y estándares de programación a diferencia de los compiladores Adobe (por ejemplo, respecto al
ámbito y tipo de dato).
Los parámetros de las funciones pueden ser definidos de forma muy precisa en Haxe:
Tipos enumerados son una característica clave del lenguaje; pueden tener parámetros propios y ser recursivos. Son similares a los
tipos de datos algebraicos en lenguajes como ML o Haskell. Las enumeraciones en Haxe no son simplemente indexados valores de
"número mágico" como en la mayoría de los lenguajes, pero es más abstracto: no contienen ningún valor inherente, pero pueden ser
instanciados en variables como en este ejemplo:
enum Color {
red;
green;
blue;
rgb: ( r : Int, g : Int, b : Int );
}
class Colors {
static function toInt ( c : Color ) : Int {
return switch ( c ) {
case red: 0xFF0000 ;
case green: 0x00FF00 ;
case blue: 0x0000FF ;
case rgb(r, g, b): (r << 16) | (g << 8) | b;
}
}
static function validCalls () {
var redint = toInt(Color.red);
var rgbint = toInt(Color.rgb(100,100,100));
}
}
Este ejemplo dibuja un cuadrado rojo usando el objeto Flash MovieClip, y usa la palabra clave "using".
using Colors ;
class Test {
static function main() {
var mc: flash.display .MovieClip = flash.Lib.current ;
mc.graphics .beginFill (red.toInt());
mc.graphics .moveTo (50,50);
mc.graphics .lineTo (100,50);
mc.graphics .lineTo (100,100);
mc.graphics .lineTo (50,100);
mc.graphics .endFill ();
}
}
Véase también
Lenguajes similares que compilan a JavaScript:
Dart
Opa
CoffeeScript
TypeScript
Lenguajes multiplataforma similares:
Monkey
Vala
Referencias
1. «Release 3.4.2» (https://github.com/HaxeFoundation/haxe/releases/tag/3.4.2) . haxe.org (en inglés).
2. «Open Source» (https://haxe.org/foundation/open-source.html) . haxe.org (en inglés).
3. «HashLink - Haxe Virtual Machine» (http://hashlink.haxe.org/)(en inglés). Consultado el 31 de julio de 2017.
4. «Target Details» (https://haxe.org/manual/target-details.html). haxe.org (en inglés).
5. Haxe Foundation. «Who is who» (https://haxe.org/foundation/people.html)(en inglés). Consultado el 31 de agosto de
2017.
Enlaces externos
Web oficial de Haxe
Libro oficial de Haxe
Haxe Learning - Exhaustiva Wiki de Haxe.
Empezando con Haxe en FDT 5.0
Un vídeo introductorio a Haxe
RAZAINA.FR - Algunos tutoriales de Haxe para principiantes.
haxe.us - Un tutorial introductorio de Haxe.
HaQuery - Web framework basado en Haxe
Obtenido de «https://es.wikipedia.org/w/index.php?title=Haxe&oldid=110157810
»
Esta página se editó por última vez el 24 ago 2018 a las 12:13.
El texto está disponible bajo laLicencia Creative Commons Atribución Compartir Igual 3.0 ; pueden aplicarse cláusulas
adicionales. Al usar este sitio, usted acepta nuestrostérminos de uso y nuestra política de privacidad.
Wikipedia® es una marca registrada de laFundación Wikimedia, Inc., una organización sin ánimo de lucro.