haxe Tutorial
Empezando con haxe
Buscar..
Observaciones
Haxe es un conjunto de herramientas de código abierto que es capaz de compilar a muchos lenguajes y plataformas de destino diferentes.
Consiste en:
- El lenguaje de programación Haxe : un lenguaje de programación moderno, de alto nivel y tipificado estrictamente.
- La biblioteca estándar de Haxe : una colección de API de propósito general, sistema y específicas de destino
- el compilador Haxe : un compilador cruzado rápido y optimizado con soporte de metadatos, eliminación de código muerto (DCE), modo de finalización, integración de recursos, información de tipo de tiempo de ejecución (RTTI), analizador estático, macros y más
Haxe se ha utilizado para crear juegos, aplicaciones web, móviles, de escritorio y de línea de comandos, así como API multiplataforma.
A partir de Haxe 3.3.0-rc.1, Haxe puede compilar en fuentes / códigos de bytes de los siguientes lenguajes: ActionScript 3, C #, C ++, Flash, HL, Lua, Java, JavaScript, Neko, PHP y Python.
Haxe tiene un administrador de paquetes, Haxelib , que se incluye con Haxe. También tiene un formato de archivo de compilación personalizado, .hxml , que ofrece una forma más sencilla de pasar los argumentos pasados al compilador Haxe.
Referencias
Instalación
Haxe está disponible en Windows, Linux y OS X. Se distribuye en dos formas:
- como instalador , proporciona una dependencia opcional de Neko VM y configura variables de entorno
haxeyhaxelib; - como binarios , proporcionando solo el compilador Haxe y el administrador de paquetes.
Windows
El instalador y los binarios están disponibles en el sitio web de Haxe .
Linux
Los binarios (32 bits y 64 bits) están disponibles en el sitio web de Haxe .
La Fundación Haxe también participa oficialmente en el mantenimiento de los paquetes Haxe y Neko para las distribuciones populares de Linux . Se recomienda usar esos paquetes si están disponibles.
Ubuntu
Se recomienda utilizar el PPA de Haxe, que proporciona las últimas versiones de Haxe y Neko para todas las versiones de Ubuntu compatibles actualmente. El PPA también se puede utilizar para distribuciones basadas en Ubuntu.
sudo add-apt-repository ppa:haxe/releases -y
sudo apt-get update
sudo apt-get install haxe -y
mkdir ~/haxelib && haxelib setup ~/haxelib
Tenga en cuenta que Neko se instala como una dependencia de Haxe.
Debian
Para instalar las versiones estables actualmente disponibles, ejecute los siguientes comandos:
sudo apt-get install haxe -y
mkdir ~/haxelib && haxelib setup ~/haxelib
Tenga en cuenta que Neko se instalará como una dependencia de Haxe.
Para instalar nuevas versiones desde el canal inestable, haga lo siguiente:
En
/etc/apt/sources.list, agreguedeb http://httpredir.debian.org/debian unstable main contrib non-freeEn
/etc/apt/preferences.d/, cree un nuevo archivo llamadounstablecon el siguiente contenido:Package: * Pin: release a=unstable Pin-Priority: 100 Package: haxe neko libneko* Pin: release a=unstable Pin-Priority: 999Extraiga los archivos de índice del paquete de la fuente recién agregada:
sudo apt-get updateInstalar Haxe (y Neko):
sudo apt-get install haxe -y
Fedora
La Fundación Haxe mantiene los paquetes de RPM Haxe y Neko en el repositorio de Fedora. Los paquetes están actualizados la mayor parte del tiempo. Sin embargo, cuando se lance una nueva versión de Haxe, tomará unos días, hasta 2 semanas, enviar un paquete actualizado a las versiones estables de Fedora. Las actividades de actualización se pueden rastrear en el Sistema de actualización de Bodhi Fedora .
Para instalar las versiones actualmente disponibles de Haxe y Neko, ejecute los siguientes comandos:
sudo dnf install haxe -y
mkdir ~/haxelib && haxelib setup ~/haxelib
Tenga en cuenta que Neko se instala como una dependencia de Haxe.
openSuse
La Fundación Haxe mantiene los paquetes de RPM Haxe y Neko en el repositorio de fábrica de openSUSE. Los paquetes están actualizados la mayor parte del tiempo. Sin embargo, cuando se lance una nueva versión de Haxe, demorará algunos días, hasta 2 semanas, en ser aceptado por openSUSE: Factory.
Para instalar las versiones actualmente disponibles de Haxe y Neko, ejecute los siguientes comandos:
sudo zypper install haxe
mkdir ~/haxelib && haxelib setup ~/haxelib
Tenga en cuenta que Neko se instala como una dependencia de Haxe.
Para obtener la última versión de Haxe que no esté disponible para openSUSE: Factory o una versión de openSUSE, use el proyecto devel: languages: haxe en el servicio de creación de openSUSE. Visite la página del paquete Haxe , haga clic en "Descargar paquete" en la esquina superior derecha y siga las instrucciones. Nuevamente, Neko también se instalará como una dependencia de Haxe.
Arco de linux
Hay paquetes Haxe y Neko en el repositorio de la comunidad de Arch Linux. La Fundación Haxe continuará ayudando a mantener los paquetes actualizados. Sin embargo, cuando se lance una nueva versión de Haxe, tomará tiempo actualizar el paquete, dependiendo de la disponibilidad del mantenedor del paquete.
Para las versiones actualmente disponibles de Haxe y Neko, consulte las siguientes páginas:
Para instalar las versiones actualmente disponibles de Haxe y Neko, ejecute los siguientes comandos:
sudo pacman -S haxe
mkdir ~/haxelib && haxelib setup ~/haxelib
Tenga en cuenta que Neko se instala como una dependencia de Haxe.
OS X
El instalador y los binarios están disponibles en el sitio web de Haxe .
También es posible instalar la versión estable actual de Haxe a través del gestor de paquetes Brew .
brew install haxe
Referencias
Hola Mundo
Requerimientos
- Se debe instalar una versión del kit de herramientas Haxe.
- Haxe debe estar presente en su ruta del sistema
- La línea de comando debe ser accesible
Código
Navegue a un directorio de proyecto deseado y cree un archivo fuente Test.hx con el siguiente contenido:
class Test {
static function main() {
trace("Hello world");
}
}
Los archivos fuente de Haxe se llaman módulos . Un módulo debe definir un tipo ( abstract , class , enum , interface o typedef ) con el mismo identificador que el nombre del módulo; en este caso, la clase Test . Una vez que se cumple ese requisito, un módulo puede definir un número arbitrario de diferentes tipos.
Los programas Haxe requieren un punto de entrada , como se indica en la función main estática. La clase que implementa el punto de entrada es la clase de inicio o la clase principal. De nuevo, en este caso, la clase principal es la clase Test .
La función trace() es una función de registro de propósito general expuesta al espacio de nombres global por conveniencia. Da salida al identificador de salida estándar del idioma de destino (por ejemplo, consola del navegador para JavaScript, línea de comandos para C ++). Consulte la documentación de la API para obtener más información.
Ejecución
Navegue a la carpeta del proyecto desde su línea de comando. Pruebe a ver si Haxe está configurado en su entorno llamando al:
haxe --help
El intérprete de Haxe se puede usar para probar el código que no se basa en ninguna API de idioma de destino específico. Utilice el intérprete llamando al
haxe -main Test --interp
Recuerde , el módulo de Test contiene la clase de inicio de Test , por lo que se pasa la -main Test al compilador.
Las fuentes de Haxe pueden compilar ( transpilar ) a fuentes / códigos de bytes de varios idiomas diferentes. La siguiente tabla muestra el idioma de destino, el indicador del compilador, el tipo de argumento y el resultado de la compilación. Úsalo llamando
haxe -main Test [flag] [argument] .
| Idioma | Bandera | Argumento | Resultado |
|---|---|---|---|
| ActionScript 3 | -as3 | Directorio | Fuente |
| DO# | -cs | Directorio | Fuente + bytecode opcional (.exe) |
| C ++ | -cpp | Directorio | Fuente + binario opcional (nativo) |
| Destello | -swf | Expediente | Bytecode (.swf) |
| HL | -hl | Expediente | Fuente |
| Lua | -lua | Expediente | Fuente |
| Java | -Java | Directorio | Fuente + bytecode opcional (.jar) |
| JavaScript | -js | Expediente | Fuente |
| Neko | -neko | Expediente | Bytecode (.n) |
| PHP | -php | Directorio | Fuente |
| Pitón | -pitón | Expediente | Fuente |
| HashLink | -hl | Expediente | Bytecode (.hl) |
Tenga en cuenta que los argumentos de ruta aquí son relativos a la ruta haxe se llamó. Las salidas de bytecode / binary opcionales se pueden excluir agregando los indicadores -D no-compilation , para evitar un paso de compilación adicional que implique llamar al compilador del idioma de destino.