2007年11月27日
「VB言語って習得して役に立つのかな?・・・実践編」
K君はVBで、将棋のプログラムを作っています。
ソースも含めて、見せて貰いました。
コミュニケーションのキッカケが出来て、とても嬉しかったですね。
そこで、ちょっとしたことですが、幾つかアドバイスがあります。
まず、データーとプログラムを、しっかり分けることから始めましょう。
プログラムの引数は、データーのポインターが主になります。
また関数の本体から、定数が減って、変数が増えてきます。
それでは下記のプログラムを見て下さい。
void program_a ( tmp_data *p_data)
{
p_data->flag = 1;
strcpy( p_data->name, "TEST -A-" );
p_data->value= 123;
return;
}
さらに引数を追加すれば、関数の中身は、全て変数のみ、固定値はなくなります。
void program_a ( tmp_data *p_data, int flag, char *name, int data )
{
p_data->flag = flag;
p_data->name = name;
p_data->value = data;
return;
}
VBではありませんが、ご理解下さいね。(^^;;
よければ、VBで書き直すことに、挑戦してみて下さい。
このような関数は汎用性があり、数式で表わすと、Z=X+Y が理想です。
定数などの固定値が少なく、変数が多い関数は、汎用性が高まります。
しっかりデーターとプログラムを分けるよう心がけて見ましょう。
こちらから、プログラムソースがダウンロードできます。
勉強する方は、是非どうぞ!
ファイルをダウンロード
Excel VBA でゲームが作れる本も、合わせて紹介しておきま~す!
ツイッターはじめました~フォロー待ってま~す!!
↓↓↓下記の3つのバナーをクリックして下さい。ランキングUPにご協力をお願いします。↓↓↓
投稿者 shiozumi : 00:01 | コメント (3) | トラックバック (0)
コメント
こんばんは。SATです。
Kさんから業務日報のマニュアルを頂戴しました。
かなり助かります。ありがとうございました。
社長、早速ソースダウンロードさせていただきますね。
ちなみにクリック任務は毎日やっていますよ。
ブログ内容がプログラム関連になってコメントが減った理由は、私の場合はインスパイアされてiモードアプリの専門書籍読んだり、基本情報の本読むのでコメント忘れてました・・・。
申し訳ありません・・・。
VBは少し触ったことがあり、○×ゲームとオセロあわせたような、独自に作成したルールのゲームを作ったことがありますが、お世辞にも”良いソース”とはいえません(泣)
個人的な目標はC系でテトリスのようなものをちゃんとソースを考えて作りたいと思います。Sさんのアドバイスです。
長くなって申し訳ありませんが、今日も先ほど出向先より帰宅して業務日報→クリック任務といった感じでやっています。
投稿者 SAT : 2007年11月27日 01:57
こんばんわ。ジュニアです。
VB系(特にVBA)はプログラマーだけでなく、SE全般の業務で使用する機会があります。
自分はUNIX、Windowsなどのサーバーインフラ周りやDBなどの業務をやっていますが、サーバの何万行ものログを解析するのにExcelにデータを落としたものを見やすく集計するためにVBAでマクロを組んだりします。あと良くやるのは表に定義を入れてワンクリックでSQL作るマクロなんか作ったり・・・。
VB系は初めてプログラムの世界に入る人にはいい言語だと思います。あとはどのエンジニアの職種行っても無駄になるって事はありません。
いきなりCやjava、アセンブラは難しそうって思ってる人でもいつでも自宅から始められるVBAはオススメです!!
投稿者 ジュニア : 2007年11月27日 19:44
こんばんは
最近業務の中で電話の着信フローをプログラム状にする
ツールをいろいろ触る機会がふえてきたのですが
昔「こんにちわマイコン」でやっていたBASICみたいで
どんなところでも絡んでくるものだなぁとしみじみ
思ってる場合ではなく
日本語リファレンスが無く、web上でも日本人同士の
コミュニティがないようなツールで
毎日英語と首っ引きです。
でも基本の考え方などはいろんな言語と同じようなので
ブログのお話が色々ためになります。
投稿者 ino : 2007年11月27日 21:09