[Placebo Effect] >[Programming] >[Java]
021: 10個の点が3-Dで移動する <実
行してみる> <ソー
スコード>
2004-02-15
このサンプルでは、光点が、立体的にはね回ります。
上下左右だけでなく、奥行き方向にも移動します。
これは、flipXYZクラスの中で、filpクラスを3つ使っているだけ。
奥行きの位置に合わせて、四角のサイズを変えています。
簡単に改良できました。
使っているflipクラスは、同じモノです。
032: 10個の画像がはね回る <実
行してみる> <ソー
スコード>
2004-02-17 -> 03-13
このサンプルでは、光点ではなく、画像イメージを読み込んで
それがはね回ります。ちょっと雰囲気がよくなるところが面白い。
画像を拡大してみました。
さらに、サンプルプログラムを作ってみました。
いくつもの光点がバラバラに動いていると、管理する方も大変です。
そこで、これをVectorオブジェクトに放り込みます。
すると、Vectorオブジェクトの中の光点オブジェクトを一括して操作できます。
これは、コレクションというJavaの機能です。
010: 3個の点が上下左右に移動する <実 行してみる> <ソー スコード>
次のサンプルは、3個の光点がはね回ります。
先日のA3プログラムと同じですが、Vectorを使って管理しているトコロが違います。
使っているflipXYクラスは、同じモノです。
011: 10個の点が上下左右に移動する <実 行してみる> <ソー スコード>
調子に乗って、光点の数を10個にしてみました。
プログラム的には、ほとんど改造の必要がありません。
数を増やすだけ。移動量を光点ごとに設定するだけです。
次は、クラスと継承のありがたみについて、サンプルを作ろうかと思っています。
Javaを始めてみました。
で、オブジェクト指向とはなんぞというメモ書きとサンプルです。
Javaは、Webサイトでもi-Modeでも使われてるし、今さらホジるところは無いかと思っていましたが
案外、初心者向け解説では、オブジェクト指向を理解している感じがしない・・・・。
それで、まあワタシなりの感想をメモっておこうと言うことです(公開してるけど)。
プログラム = アルゴリズム + データ構造
昔から、こんな事が言われています。
だから、オブジェクト指向では、このアルゴリズムとデータ構造をセットにしておこうヨ って事です。
それだけです。
で、これをプログラムの作り方の隅々まで適用したのが、オブジェクト指向です。
オブジェクト指向以前のプログラムスタイルとは、まるで違ってしまいますが、基本はコレです。
コレだけです。
そして、オブジェクト指向では、これを徹底的に推し進めているのです。
でもこれ、言ってる事は単純でも、実際にどうプログラムするか、よく分かりません。
いくつかサンプルプログラムを作ってみました。
001: 1個の点が左右に往復運動する <実
行してみる> <ソー
スコード>
まず、一番シンプルな動きです。
光点のデータ側(flipクラス)に、壁の位置判定をするコードがついてます。
002: 1個の点が上下左右に移動する <実 行してみる> <ソー スコード>
同じflipクラスを2つ組み合わせて、2次元の動きを作ってます(flipXYクラス)。
先に作ったflipクラスを流用しているので、壁の判定は、そちらにおまかせ。
003: 3個の点が上下左右に移動する <実 行してみる> <ソー スコード>
1個から3個に増やすのは、何の工夫もありません。02a: 1個の点が上下左右に移動する <実
行してみる> <ソー
スコード>
2004-02-17
上にあるのと同じ動きをするプログラムですが、ダブルバッファを使ってません。
ソースコードを見比べると、その違いがよく分かるんじゃないかな。