パンダゼロと覚える ActionScript3.0(2) - いちばん簡単なプログラムハローワールドを学ぶ
- 謎の生物との出会いとAS3の環境整備
- いちばん簡単なプログラムハローワールドを学ぶ
- Flashと表示リスト
本連載では、Flash/Flex/AIR と言った注目の技術で使われるスクリプト言語「ActionScript3.0」を気軽に学習できることを目標にしています。気軽に楽しみながら覚えてもらえるように、会話形式になっています。謎の生物「パンダゼロ」と一緒にActionScript3.0を覚えましょう。今回は、基本的なAS3の書き方を紹介します。
これまでのあらすじと登場人物の紹介
ある日の夕暮れ。ふみかちゃんの部屋に、不思議な生物「パンダゼロ」がやってきました。そして、どういう訳か、ふみかちゃんに、ActionScript3.0を教えることになったのです。
【登場人物】
| 謎の生物「パンダゼロ」 | 謎の生命体、全てが謎に包まれているが、なぜか、ActionScript3.0が得意。 | |
| 普通の女の子「ふみかちゃん」 | プラス思考ながら難しい事が苦手な女の子。 |
前回までのおさらい
前回は、無料の ActionScript3.0 コンパイラ「Flex SDK」のダウンロードとインストール、そして、簡単なプログラムをコンパイルしてみました。
ハローワールドを学ぶ
パンダゼロ「ふみかちゃん、新しくプログラミング言語を覚える時に一番はじめに考えるプログラムって何か知ってますか?」
ふみか「何だろう?」
パンダゼロ「Hello, World!という文字を表示するだけのプログラムなんだけど、一番簡単で、これを学ぶことによって、そのプログラミング言語を学ぶ時の足がかりになるんですよ。」
ふみか「へぇ。」
パンダゼロ「インターネット最大級の辞書サイト、WikipediaでHello,World!を見るととても面白いですよ。」
- Hello worldプログラムの一覧
- http://ja.wikipedia.org/wiki/Hello_world%E3%..
二人は、一緒にHello worldの一覧を見てみました。
ふみか「わっ!いろいろな言語で、Hello, World!が書かれているね。」
パンダゼロ「そうなんですよ。中には、このコラムの筆者が作った『なでしこ』の例まで書いてあって、面白いです。」
ふみか「でも、2008年6月22日現在で、ActionScript3.0 の例はないわね。」
パンダゼロ「そうですね。それでは、今から作ってみましょうか。」
そう言って、パンダゼロはおもむろにテキストエディタを開き、以下のようなプログラムを書いて、「Hello.as」という名前で保存しました。
package {
// ライブラリの取り込みを行う宣言
import flash.display.Sprite;
import flash.text.TextField;
// クラスの宣言
public class Hello extends Sprite
{
// 変数の宣言
public var a_txt:TextField;
// 生成処理(コンストラクタ)
public function Hello()
{
// テキストフィールドを生成
a_txt = new TextField();
// テキストを設定
a_txt.text = "Hello World!";
// 画面に表示する
this.addChild(a_txt);
}
}
}
パンダゼロ「これを、実行するためには、コマンドラインから次のように実行します。」
※ここでは、プログラムを「C:\AS3\Hello.as」に保存したと仮定しています。また、行頭の「>」は入力する必要はありません。
cd AS3 mxmlc Hello.as
パンダゼロ「コンパイルがうまくいったら、Hello.swf というファイルができるので、Flash Playerで開くか、ブラウザにドラッグ&ドロップして実行してみます。」
ふみか挫折する?!
ふみか「これが、一番簡単なプログラム?!がーん、私、自身なくしてきた。ぜんぜん分からないよ(>o<。」
パンダゼロ「うーん、薄々、そう言われるんじゃないかと思っていましたが、やはり・・・。」
ふみか「見るからに難しそうだよ。」
パンダゼロ「それでは、難しいことは抜きにして、このプログラムのポイントを、3つだけ紹介します。」
ポイント1:プログラムの構造を確認する
パンダゼロ「以下のプログラムは、先のHello.asからプログラムの構造を表す部分だけを取り出したものです。一番大きな枠は、package で、パッケージの内容が、その直後の { から } の中に書かれていることを表します。また、package の中には、public class Hello とあり、これはHelloというクラスというものを宣言していますが、この宣言は、その直後の { から対応する } までの間に書かれています。それから、クラス宣言の中にある public function Hello は関数と言うものを宣言しているのですが、その内容も、その直後の { から } までの間に書かれます。」
package {
public class Hello //...
{
public function Hello()
{
//...
}
}
}
ふみか「よくわからないけど、package、class、function というのがそれぞれの直後にある『{』から『}』までの間に書かれているということね。分かったような分からないような…。」
ポイント2:ファイル名とクラス名を一致させること
パンダゼロ「次のポイントは、Hello.as というファイル名についてです。ActionScript3.0では、ファイル名とクラス名を一致させる必要があるということです。ここでは、Hello.as というファイル名を付けましたが、それは、Hello というクラスを作ったので、Hello.as という名前をつけなくてはならなかったのです。もし、Panda というクラスを作ったなら、Panda.as という名前でファイルを保存します。」
ふみか「ファイルの名前と、クラスの名前を同じにすると。これは、分かったわ。クラスと言うのは、public class Hello の部分のことね。」
ポイント3:一番初めに実行される関数
パンダゼロ「最後のポイントは、Hello クラスを定義したら、そのクラスの中にある、Hello という関数が一番初めに実行されるということです。」
ふみか「クラスとか、関数とか、よく分からないけど。」
パンダゼロ「クラスや関数については、またゆっくりと解説しますね。ここで覚えておきたいのは、Hello.as という名前のファイルには、Hello クラスが定義されていて、その Hello という名前の関数が定義されていて、ここが一番初めに実行されるということが大切です。」
ふみか「へぇ~。分かったような、分からないような。」
パンダゼロ「もう一度、プログラムのポイントだけを見てみましょうか。」
package {
//...
// クラスの宣言
public class Hello extends Sprite
{
// ...
// 一番初めに実行される関数の宣言
public function Hello()
{
// テキストフィールドを生成
a_txt = new TextField();
// テキストを設定
a_txt.text = "Hello World!";
// 画面に表示する
this.addChild(a_txt);
}
}
}
ふみか「そうかぁ。この function Hello() の波カッコの中が一番初めに実行されるという訳ね。」
パンダゼロ「そうです。そして、今回作った、Hello関数の中では、"Hello World!"と画面に表示する処理を書いているんです。」
ふみか「なるほどね。まだ、漠然としているけど、ポイントは分かった気がする。」
まとめ
パンダゼロ「今日は、ここまでにしておきましょうか。今回は、プログラミング言語を覚える上で一番基本となるハローワールドを紹介しました。一番の基本ということで、どういう構造になっているのか、ファイル名はどのようにするのか、どの部分が初めに実行されるのかを見てきました。」
ふみか「でも、分からないことだらけだったよ。」
パンダゼロ「ActionScript3.0のpackage や public class などの語句は、それぞれ意味があるのですが、一度に全部は覚えきれません。そこで、初めのうちは、一種の定型文みたいなものとして考えて先に進むしかないので、軽く飛ばして、どんどん進んで行きましょう。」
ふみか「そうなんだ。ちょっと次回が楽しみになってきたよ。」
こうして、ActionScriptと共に夜が更けていきました。ふみかちゃんは、ハローワールドの夢を見ていることでしょう。次回をお楽しみに。
このサイトについて
TrackBack URL :




