ユーザ用ツール

サイト用ツール


tutorial:haxe:hello_world

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
tutorial:haxe:hello_world [2024/08/20 01:59] – 削除 - 外部編集 (不明な日付) 127.0.0.1tutorial:haxe:hello_world [2024/08/20 01:59] (現在) – ↷ tutorial:haxe:hello-world から tutorial:haxe:hello_world へページを名称変更しました。 freemikan
行 1: 行 1:
 +====== Hello World! ======
 +
 +Haxeのインストールが終わり、''haxe''と''haxlib''コマンドが使える状態になったら、さっそくコードを書いて動かしてみます。最初のプログラムは予想される通り、伝統的なHello Worldです。テキストエディタを起動して次のコードを打ち込みます。 
 +
 +
 +<file haxe>
 +class Hello {
 +    static function main() {
 +        trace("Hello, world!");
 +    }
 +}
 +</file>
 +
 +任意の作業用ディレクトリに、この内容のテキストファイルを//Hello.hx//という名前で保存します。Haxeのソースコードファイルの拡張子は「**.hx**」です。
 +
 +このHello Worldプログラムを実行する方法はたくさんあります。Haxeコンパイラは他の言語のソースコードやVMのバイトコードを出力するので、その分だけ実行方法があります。
 +
 +まずは、もっとも簡単な方法を紹介します。ターミナルアプリケーションを起動して、ファイルを保存したディレクトリに移動します。
 +
 +<cli>
 +$ cd path/to/hello-world
 +</cli>
 +
 +続いて、次のコマンドを打ち込みます。
 +
 +<cli>
 +$ haxe --main Hello --interp
 +Hello.hx:3: Hello, world!
 +</cli>
 +
 +"Hello, world!"というテキストが出力されました。ファイル名と行番号も出力されるため、シンプルさと美しさが損なわれていると感じるかもしれませんが、大体は期待したとおりでしょう。''--main''は、実行するmain関数(メソッド)を含むクラスの名前を指定するオプションです。このMainとなるクラスの名前は、ファイル名の拡張子を除いた名前と一致させる必要があります。''--interp''は、ターゲットを生成するのではなく、コンパイラに直接その場で実行させることを指示するものです。
 +
 +次に、別の言語をターゲットターゲットしてコードを生成させてみます。全部やるのは大変なので、JavaScriptとNekoVMだけをやってみます。
 +
 +先ほどと同じディレクトリで、次のコマンドを打ち込みます。
 +
 +<cli>
 +$ haxe --main Hello --js hello.js
 +</cli>
 +
 +すると、同じディレクトリに''hello.js''というファイルが生成されます。
 +
 +<cli>
 +$ ls
 +Hello.hx  hello.js
 +</cli>
 +
 +この''hello.js''は、HTMLに読み込んでWebブラウザから実行することも出来ますし、Node.jsで実行することも出来ます。試しに、Node.jsで実行してみます。
 +
 +<cli>
 +$ node hello.js
 +Hello.hx:3: Hello, world!
 +</cli>
 +
 +先ほどの''--interp''を使ったときと同じ出力になりました。
 +
 +NecoVMの場合は次のようにします。
 +
 +<cli>
 +$ haxe --main Hello --neko hello.n
 +$ ls
 +Hello.hx  hello.js  hello.n
 +</cli>
 +
 +''hello.n''というファイルが生成されました。NecoVMのバイトコードのファイルは、拡張子が「**.n**」となります。
 +
 +実行してみます。
 +
 +<cli>
 +$ neko hello.n 
 +Hello.hx:3: Hello, world!
 +</cli>
 +
 +同じ結果が得られました。
 +
 +他の言語をターゲットとする場合も、同じような手順でできます。ただし、いくつかのターゲットは環境を追加でインストールする必要があります。どれも''haxlib''でインストール出来ます。それらについては別のページを用意する予定です。今すぐ知りたい場合は[[https://haxe.org/manual/target-details.html|マニュアル]]を参照してください。
  

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki