haxe Zelfstudie
Aan de slag met haxe
Zoeken…
Opmerkingen
Haxe is een open source toolkit die kan compileren naar veel verschillende doeltalen en platforms.
Het bestaat uit:
- de Haxe-programmeertaal - een moderne, hoog niveau en strikt getypte programmeertaal
- de Haxe-standaardbibliotheek - een verzameling algemene API's en systeemspecifieke API's
- de Haxe-compiler - een snelle, optimaliserende cross-compiler met metadata-ondersteuning, dode code-eliminatie (DCE), voltooiingsmodus, insluiting van bronnen, runtime-type-informatie (RTTI), statische analyser, macro's en meer
Haxe is gebruikt om games, web, mobiel, desktop en opdrachtregeltoepassingen te maken, evenals platformonafhankelijke API's.
Vanaf Haxe 3.3.0-rc.1 kan Haxe compileren naar bronnen / bytecode van de volgende talen: ActionScript 3, C #, C ++, Flash, HL, Lua, Java, JavaScript, Neko, PHP en Python.
Haxe heeft een pakketbeheerder, Haxelib , die wordt gebundeld met Haxe. Het heeft ook een aangepast build-bestandsformaat, .hxml , dat een eenvoudiger manier biedt om argumenten door te geven aan de Haxe-compiler.
Referenties
Installatie
Haxe is beschikbaar op Windows, Linux en OS X. Het wordt verdeeld in twee vormen:
- als een installatieprogramma , het verstrekken van een optionele Neko VM-afhankelijkheid en het configureren van omgevingsvariabelen
haxeenhaxelib; - als binaries , alleen de Haxe-compiler en pakketbeheerder.
ramen
Installer en binaire bestanden zijn beschikbaar op de Haxe-website .
Linux
Binaries (32-bit en 64-bit) zijn beschikbaar op de Haxe-website .
De Haxe Foundation neemt ook officieel deel aan het onderhoud van Haxe- en Neko-pakketten voor populaire Linux-distributies . Het wordt aanbevolen om deze pakketten te gebruiken indien beschikbaar.
Ubuntu
Het wordt aanbevolen om de Haxe PPA te gebruiken die de nieuwste Haxe- en Neko-releases biedt voor alle momenteel ondersteunde Ubuntu-versies. De PPA kan ook worden gebruikt voor op Ubuntu gebaseerde distributies.
sudo add-apt-repository ppa:haxe/releases -y
sudo apt-get update
sudo apt-get install haxe -y
mkdir ~/haxelib && haxelib setup ~/haxelib
Merk op dat Neko is geïnstalleerd als een afhankelijkheid van Haxe.
Debian
Voer de volgende opdrachten uit om de momenteel beschikbare stabiele versies te installeren:
sudo apt-get install haxe -y
mkdir ~/haxelib && haxelib setup ~/haxelib
Merk op dat Neko zal worden geïnstalleerd als een afhankelijkheid van Haxe.
Ga als volgt te werk om nieuwere releases van het onstabiele kanaal te installeren:
Voeg in
/etc/apt/sources.listtoedeb http://httpredir.debian.org/debian unstable main contrib non-freeMaak in
/etc/apt/preferences.d/een nieuw bestand met de naamunstablemet de volgende inhoud:Package: * Pin: release a=unstable Pin-Priority: 100 Package: haxe neko libneko* Pin: release a=unstable Pin-Priority: 999Haal pakketindexbestanden uit de nieuw toegevoegde bron:
sudo apt-get updateInstalleer Haxe (en Neko):
sudo apt-get install haxe -y
Fedora
De Haxe Foundation onderhoudt de Haxe en Neko RPM-pakketten in de Fedora repository. De pakketten zijn meestal up-to-date. Wanneer een nieuwe versie van Haxe echter wordt vrijgegeven, duurt het een paar dagen, tot 2 weken, om een bijgewerkt pakket naar de stabiele releases van Fedora te pushen. De updateactiviteiten kunnen worden gevolgd in het Bodhi Fedora- updatesysteem.
Voer de volgende opdrachten uit om de momenteel beschikbare versies van Haxe en Neko te installeren:
sudo dnf install haxe -y
mkdir ~/haxelib && haxelib setup ~/haxelib
Merk op dat Neko is geïnstalleerd als een afhankelijkheid van Haxe.
openSuse
De Haxe Foundation onderhoudt de Haxe en Neko RPM-pakketten in de openSUSE: Factory-repository. De pakketten zijn meestal up-to-date. Wanneer echter een nieuwe versie van Haxe wordt uitgebracht, duurt het enkele dagen, tot 2 weken, om te worden geaccepteerd door openSUSE: Factory.
Voer de volgende opdrachten uit om de momenteel beschikbare versies van Haxe en Neko te installeren:
sudo zypper install haxe
mkdir ~/haxelib && haxelib setup ~/haxelib
Merk op dat Neko is geïnstalleerd als een afhankelijkheid van Haxe.
Om de nieuwste Haxe-versie te krijgen die mogelijk niet beschikbaar is voor openSUSE: Factory of een openSUSE-release, gebruikt u het project devel: languages: haxe in de openSUSE Build-service. Ga naar de Haxe-pakketpagina , klik op "Pakket downloaden" in de rechterbovenhoek en volg de instructies. Nogmaals, Neko zal ook worden geïnstalleerd als een afhankelijkheid van Haxe.
Arch Linux
Er zijn Haxe- en Neko-pakketten in de Arch Linux-communityrepository. De Haxe Foundation blijft de pakketten up-to-date houden. Wanneer een nieuwe versie van Haxe wordt uitgebracht, kost het echter tijd om het pakket bij te werken, afhankelijk van de beschikbaarheid van de pakketbeheerder.
Raadpleeg de volgende pagina's voor de momenteel beschikbare versies van Haxe en Neko:
Voer de volgende opdrachten uit om de momenteel beschikbare versies van Haxe en Neko te installeren:
sudo pacman -S haxe
mkdir ~/haxelib && haxelib setup ~/haxelib
Merk op dat Neko is geïnstalleerd als een afhankelijkheid van Haxe.
OS X
Installer en binaire bestanden zijn beschikbaar op de Haxe-website .
Het is ook mogelijk om de huidige stabiele Haxe-versie te installeren via de Brew- pakketbeheerder.
brew install haxe
Referenties
Hallo Wereld
Voorwaarden
- Er moet een versie van de Haxe-toolkit zijn geïnstalleerd
- Haxe moet aanwezig zijn in uw systeempad
- Opdrachtregel moet toegankelijk zijn
Code
Navigeer naar een gewenste projectmap en maak een Test.hx -bronbestand met de volgende inhoud:
class Test {
static function main() {
trace("Hello world");
}
}
Haxe-bronbestanden worden modules genoemd . Een module kan een type (definieer abstract , class , enum , interface of typedef in dit geval de -) met dezelfde ID als de modulenaam Test klasse. Zodra aan die eis is voldaan, kan een module een willekeurig aantal verschillende typen definiëren.
Haxe programma's vereisen een entry point, zoals aangegeven door de statische main functie. De klasse die het startpunt implementeert, is de opstartklasse of hoofdklasse. Nogmaals, in dit geval is de hoofdklasse de Test .
De functie trace() is een logfunctie voor algemene doeleinden die voor het gemak wordt blootgesteld aan de globale naamruimte. Het wordt uitgevoerd naar de standaarduitvoerhandle van de doeltaal (bijv. Browserconsole voor JavaScript, opdrachtregel voor C ++). Raadpleeg de API-documentatie voor meer informatie.
Executie
Navigeer naar de projectmap vanaf uw opdrachtregel. Test om te zien of Haxe in uw omgeving is geconfigureerd door te bellen naar:
haxe --help
De Haxe-interpreter kan worden gebruikt om code te testen die niet afhankelijk is van een specifieke API voor de doeltaal. Gebruik de tolk door te bellen naar:
haxe -main Test --interp
Vergeet niet dat de Test module bevat de Test startup klasse, dat is de reden waarom -main Test aan de compiler wordt doorgegeven.
Haxe-bronnen kunnen compileren ( transpile ) naar bronnen / bytecodes van verschillende talen. In de volgende tabel worden de doeltaal, de compilervlag, het argumenttype en het compilatieresultaat weergegeven. Gebruik het door te bellen naar:
haxe -main Test [flag] [argument] .
| Taal | Vlag | Argument | Resultaat |
|---|---|---|---|
| ActionScript 3 | -as3 | directory | Bron |
| C # | -CS | directory | Bron + optionele bytecode (.exe) |
| C ++ | -cpp | directory | Bron + optioneel binair (native) |
| Flash | -swf | het dossier | Bytecode (.swf) |
| HL | -HL | het dossier | Bron |
| Lua | -lua | het dossier | Bron |
| Java | -Java | directory | Bron + optionele bytecode (.jar) |
| JavaScript | -JS | het dossier | Bron |
| Neko | -neko | het dossier | Bytecode (.n) |
| PHP | -PHP | directory | Bron |
| Python | -Python | het dossier | Bron |
| HashLink | -HL | het dossier | Bytecode (.hl) |
Merk op dat de haxe hier relatief zijn ten opzichte van het pad waarvan haxe werd aangeroepen. De optionele bytecode / binaire uitgangen kunnen worden afgemeld door de -D no-compilation vlaggen toe te voegen, om een extra compilatiestap te voorkomen waarbij de compiler van de doeltaal wordt aangeroepen.