Frage

Ich bin in der Planungsphase eines neuen Flash-Spiel-Projekt und habe mich gefragt, welche Sprache wäre besser zu nutzen? Ich habe bereits ein starkes Verständnis von Actionscript 3, und nicht mit Haxe noch gearbeitet, aber ich habe die Sprache Referenz docs gelesen und es scheint, dass Haxe einige der Features von meinen anderen Lieblingssprachen hat, C # und Ruby.

Also meine Frage hat zwei Teile:

1) Kann Haxe Interop mit Flash-Komponenten (SWC-Dateien)? Wie zum Beispiel, wenn ich die Flash-IDE verwenden, um einige Kontrollen, um die Haut, kann ich diese Kontrollen importieren und sie in Haxe verwenden?

2) Gibt es irgendwelche Performance-Vorteile für die Haxe Compiler? oder Fallstricke?

War es hilfreich?

Lösung

1) Ja und nein. Ab 2.03 Haxe kann SWC exportieren. Dies bedeutet, dass Sie Ihren Code in Haxe schreiben kann, auf eine SWC kompilieren und dann diese SWC Flash nutzen. Gerade jetzt Haxe nicht unterstützt SWC-Eingang, nur dann ausgegeben (obwohl ich glaube, dass sie auf diesen arbeiten).

2) Ja, es gibt Vorteile für die Haxe mit - im Gegensatz zu Adobe-Compiler Haxe hat tatsächlich einige Optimierungen während der Kompilierung (dies ein großer Stein des Anstoßes in der Gemeinde eine Zeit lang war). Darüber hinaus nutzt Haxe einig „versteckte“ neue Bytecode, der ins Leben gerufen mit dem Flash Player kam 10, die derzeit weder Flash oder Flex nutzen - nur Adobes Alchemy (welche Quer compiles von C / C ++ Quelle in SWC).

Der einzige „Gotcha“, die ich kenne, ist, dass es ist eine Art Bizzaro Actionscript - die Dinge sind einfach genug unterschiedlich, dass es Ihnen, einen fairen Betrag auslöst. Davon abgesehen, mit Funktionen wie Generics und schnellerer Code, das ist, kleiner Preis zu zahlen!

Andere Tipps

Sie können viele nützliche Sachen auf lib.haxe.org ... (Kasse haxelib was das betrifft (ein bisschen wie Rubin Edelsteine, könnte man sagen)) ... es gibt auch ein AS3-Wandler haxe ... so könnten versuchen, relevante Teile der corelib zu haxe ... einige manuelle Fixierung der Übersetzung wird jedoch erforderlich sein, ich vermute ... wenn es um die Kontrollen kommt, überprüfen Sie nur die GUI-Bibliotheken Haxe aus ... es gibt ein paar von ihnen rund um die Web floating ...

Jetzt Haxe Profis: eine gute Sache über Haxe ist, dass der Compiler viel schneller, so dass Sie kompilieren nicht viel Zeit damit verbringen, ... ernsthaft, es einen Unterschied macht ...

Auch Haxe ist eine viel reichere Sprache, wie branden bereits implizit angegeben ... Ich möchte nur hinzufügen, Sie sollten wirklich Aufzählungen hier ...

Doch das Beste an Haxe ist, dass, wenn ich einen Server schreiben kommt, können Sie mit der gleichen Sprache bleiben kann, und Dinge wie Haxe remoting Ihr Leben super einfach machen ...

Es gibt einige AS3-Profis, aber die Sache ist, dass die meisten von ihnen sind nur mit der Tatsache zusammen, dass, wenn Sie Probleme in Haxe die Art und Weise versuchen zu lösen Sie in AS3 würde, die Sprache schrulligen scheint und zeigt ein unerwartetes Verhalten zur Laufzeit ... wenn Sie streng und getippt bleiben, alles stellt sich heraus, perfekt ...

Ich hoffe, das hilft ...;)

greetz

back2dos

New Veröffentlichung von Haxe heute . Fügt offizielles Ziel von C ++.

So, jetzt können Sie Zielactionscript und C ++ mit der gleichen Quelle.

NME verbessert auf Haxe plattformübergreifende Unterstützung eine einzige API für Windows, Mac, Linux, Android, iOS, webOS, Flash und HTML5-Anwendungen ohne viel Aufheben bieten.

Die Haxe Compiler ist deutlich schneller als mxmlc, vor allem, wenn Sie verwendet werden, von den Flash-IDE, statt einer IDE zu kompilieren, die die Flex Compiler Shell hostet, wie FlashDevelop. Wie erwähnt, gibt es auch eine Reihe von zugesetztem Sprach-Features, wie Iteratoren, typedefs, Strukturen, Makros und andere nice-to-haves.

Die große Sache ist, dass da Sie immer Flash-Ziel können, gibt es wenig Risiko. Die Haxe Sprache ist sehr ähnlich, und wenn Sie nichts dagegen haben, eine einzige Plattform unterstützt, können Sie alle Flashs unterstützten Funktionen zielen. Doch in dem Maße, dass Sie mit NME plattformübergreifende API-Stick, können Sie große Leistung und Funktion Vorteile für mobile und Desktop-Plattformen erleben, oder experimentieren mit HTML5-Unterstützung.

Schließlich gibt es eine SWF-Bibliothek, die es möglich, den Zugriff auf SWF-Inhalte von C ++ macht. Das ist schon immer möglich, auf dem Flash-Ziel, natürlich, aber bald sollte es sinnvoll sein, um eine Schnittstelle in dem Flash-IDE zu definieren, und verwenden Sie diese in mobilen oder Desktop-C ++ Anwendungen sowie das Flash / AIR Ziel.

1) Sie können eine SWF-Bibliothek (anstelle einem SWC) umfassen, während mit dem -swf-lib Compiler Argumente kompilieren und wenn Sie mehr als eine lib benötigen, können Sie mehr mit dem swfmill Werkzeug verschmelzen. Es ist ein Beispiel dafür in der Haxe docs .

2) Branden beantworteten diese eine perfekt :) Obwohl ich hinzufügen, dass eine Funktion, die Leistung nicht verbessert, in Flash-Anwendungen, insbesondere wird „inlining“. Seit Nicolas (der Schöpfer von Haxe) hinzugefügt noch Bytecode Optimierungen auf inlined Funktionen. Und es gibt auch noch mehr von diesen Optimierungen geplant .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top