GPCが色々と使いづらかったので、HPをCANDYサーバーに移転しました。
移転後のURLは以下の通りです。
http://candy.zapto.org/moneto/
これからもどうぞよろしくお願いします。
2009年4月15日水曜日
プログラミングを始める人へのメッセージ #02
さて、前回に引き続き「プログラミングを始める人へのメッセージ」を書いていきたいと思います。
基本的に、私の実体験が元になっています(^^;
④「自分は何を書いているのか」を明確に。
コピーソースの場合、特に疎かになりがちなのが「コードの持つ意味を考える」ことです。
1行ずつ、「この部分は何を意味しているのだろう?」と考えることで、同じコピーソースでも理解度は雲泥の差になるのです。
ただ字面だけを追って、それを何も考えずに打ち込んでいるようでは、プログラミングはまず上達しないでしょう。
⑤参考書が絶対、ではない。
プログラミングの方法は、プログラマーの数だけあるのです。
参考書のやり方が絶対、ではなく、自分なりのプログラミングの方法を探してみましょう。
例えば、「可読性と速度のバランス」をうまく取れるような方法を考えてみたり。
⑥バグは財産。
ちょっとしたミスで起こる「バグ」。この原因を1回1回丁寧に考えていけば、自分のコーディングの問題点・勘違いがはっきりと見えてきます。
それを基に、「より良い(=バグの少ない)コーディング」を目指して努力することが、初心者にとって重要なことなのではないでしょうか。
決して、「上手くいかないから、参考書のCDのデータをそのままコピーしよう」などという安易な考えをしてはいけません。そうすると、どう頑張っても実力がつかないのです。
さて、次は何を書こう……。
一応10点くらいは書きたいからなぁ…
基本的に、私の実体験が元になっています(^^;
④「自分は何を書いているのか」を明確に。
コピーソースの場合、特に疎かになりがちなのが「コードの持つ意味を考える」ことです。
1行ずつ、「この部分は何を意味しているのだろう?」と考えることで、同じコピーソースでも理解度は雲泥の差になるのです。
ただ字面だけを追って、それを何も考えずに打ち込んでいるようでは、プログラミングはまず上達しないでしょう。
⑤参考書が絶対、ではない。
プログラミングの方法は、プログラマーの数だけあるのです。
参考書のやり方が絶対、ではなく、自分なりのプログラミングの方法を探してみましょう。
例えば、「可読性と速度のバランス」をうまく取れるような方法を考えてみたり。
⑥バグは財産。
ちょっとしたミスで起こる「バグ」。この原因を1回1回丁寧に考えていけば、自分のコーディングの問題点・勘違いがはっきりと見えてきます。
それを基に、「より良い(=バグの少ない)コーディング」を目指して努力することが、初心者にとって重要なことなのではないでしょうか。
決して、「上手くいかないから、参考書のCDのデータをそのままコピーしよう」などという安易な考えをしてはいけません。そうすると、どう頑張っても実力がつかないのです。
さて、次は何を書こう……。
一応10点くらいは書きたいからなぁ…
2009年4月10日金曜日
プログラミングを始める人へのメッセージ#01
題名の通りです(何
不定期更新になるとは思いますが、私が実際に経験したことを基に、これからプログラミングを始める人へメッセージ(というか教訓)をいくつか伝えていきたいと思います。
今日はまず3つ。
①コメントを忘れずに。
合計で50行にも満たない小規模なプログラムならまだしも、中規模・大規模なプログラムを組む際、かつて自分が作成した関数・変数の意味を忘れがちになります。
ですから、summary・param name(VC#の場合)などを用いて、自分が作成した関数・変数の意味を明確にしておくことが重要です。
②変数名・関数名は分かりやすく。
1人で作業する場合で、なおかつ小規模なプログラムの場合ならまだしも、グループ開発、しかもある程度の規模のものになってくると「この変数は何を格納するんだ?」ということがあります。
ですから、「一目見ただけでその変数・関数の意味が理解できる」ような名前をつけることが大切なのです。かといって、あまり長すぎてもいけませんが・・・(^^;
③スペースをきちんと入れよう。
スペース・インデントのきちんと入った「綺麗な」ソースは、とても見易いものです。
例えば、「i = 1/2 + 3.5;」というソースコードを、
1.「i=1/2+3.5;」
2.「i = 1/2 + 3.5;」
のように、2通りに記述した場合、どちらの方がより見易いでしょうか。
何はともあれ、適切にスペースを挿入するのは大切なことです。
以上、今日は3点を扱ってみました。
明日は何を書こう…(ぉぃ
不定期更新になるとは思いますが、私が実際に経験したことを基に、これからプログラミングを始める人へメッセージ(というか教訓)をいくつか伝えていきたいと思います。
今日はまず3つ。
①コメントを忘れずに。
合計で50行にも満たない小規模なプログラムならまだしも、中規模・大規模なプログラムを組む際、かつて自分が作成した関数・変数の意味を忘れがちになります。
ですから、summary・param name(VC#の場合)などを用いて、自分が作成した関数・変数の意味を明確にしておくことが重要です。
②変数名・関数名は分かりやすく。
1人で作業する場合で、なおかつ小規模なプログラムの場合ならまだしも、グループ開発、しかもある程度の規模のものになってくると「この変数は何を格納するんだ?」ということがあります。
ですから、「一目見ただけでその変数・関数の意味が理解できる」ような名前をつけることが大切なのです。かといって、あまり長すぎてもいけませんが・・・(^^;
③スペースをきちんと入れよう。
スペース・インデントのきちんと入った「綺麗な」ソースは、とても見易いものです。
例えば、「i = 1/2 + 3.5;」というソースコードを、
1.「i=1/2+3.5;」
2.「i = 1/2 + 3.5;」
のように、2通りに記述した場合、どちらの方がより見易いでしょうか。
何はともあれ、適切にスペースを挿入するのは大切なことです。
以上、今日は3点を扱ってみました。
明日は何を書こう…(ぉぃ
2009年4月7日火曜日
2009年4月5日日曜日
「初心者に最適なプログラミング言語」とは?#02
やはりあれですね、適度に楽が出来て(挫折防止、楽しく楽にプログラミングができる)、適度に苦労する(想像力・創造力を養える)ものが一番な気がします。
…と言っても、この条件に合いそうな言語がなかなか見つからない(^^;
…と言っても、この条件に合いそうな言語がなかなか見つからない(^^;
「初心者に最適なプログラミング言語」とは?
久しぶりのプログラミング関連の話題。
今回は、題名にも有るように、「初心者に最適なプログラミング言語」について考えてみたいと思います。
これはとても難しい問題で、私のような初心者が簡単に語れるような話ではないのですが、一応、私なりの考えを纏めてみることにしました。
なお、コンパイラなどの開発環境は全てVisual Studio 2008 E.E.で考えています。
①C言語について
オブジェクト指向の言語ではないので、早いうちからclassの概念を習得するには不向きな言語です。
しかしその分、「クラスがないならどうすべきか?」を自分で考えることができ、プログラミング的な想像力を育てることはできると思います。
実際、DLLなどを書く際に用いる「extern"C"」内ではCの文法表記が用いられるので、一通りやっておいても悪くはないでしょう。
②C++言語について
オブジェクト指向の言語なので、早いうちから多くの概念を習得できます。
しかしC++という言語自体が複雑ということもあり、初心者に理解を求めるには多少きついのではないかと思います。
現在、市場に出回っているプログラミング参考書の多くはC/C++であり、参考書が充実している、という面では良いかもしれません。
しかしBoostライブラリを入れないことには……(^^;
③C#言語について
私が今までやってきた言語の中で、一番簡単だと感じた言語です。
しかし、.NETライブラリ環境・XNAにより随分と「楽」ができるようになってしまい、想像力・創造力ともにやや力不足気味になってしまうことが多いのではないかと思います。
ただ上記のXNA環境により、制作者がゲーム製作を通して「楽しく」プログラミングができるようになっているのは確かであり、挫折を未然に抑えているという面もあるのではないでしょうか。
参考書も(C/C++に比べるとまだまだですが)ある程度はそろっています。
こう考えると、どの言語もまさに「一長一短」な気がします。
皆さんは、どの言語が「初心者に最適」と考えられますか?
今回は、題名にも有るように、「初心者に最適なプログラミング言語」について考えてみたいと思います。
これはとても難しい問題で、私のような初心者が簡単に語れるような話ではないのですが、一応、私なりの考えを纏めてみることにしました。
なお、コンパイラなどの開発環境は全てVisual Studio 2008 E.E.で考えています。
①C言語について
オブジェクト指向の言語ではないので、早いうちからclassの概念を習得するには不向きな言語です。
しかしその分、「クラスがないならどうすべきか?」を自分で考えることができ、プログラミング的な想像力を育てることはできると思います。
実際、DLLなどを書く際に用いる「extern"C"」内ではCの文法表記が用いられるので、一通りやっておいても悪くはないでしょう。
②C++言語について
オブジェクト指向の言語なので、早いうちから多くの概念を習得できます。
しかしC++という言語自体が複雑ということもあり、初心者に理解を求めるには多少きついのではないかと思います。
現在、市場に出回っているプログラミング参考書の多くはC/C++であり、参考書が充実している、という面では良いかもしれません。
しかしBoostライブラリを入れないことには……(^^;
③C#言語について
私が今までやってきた言語の中で、一番簡単だと感じた言語です。
しかし、.NETライブラリ環境・XNAにより随分と「楽」ができるようになってしまい、想像力・創造力ともにやや力不足気味になってしまうことが多いのではないかと思います。
ただ上記のXNA環境により、制作者がゲーム製作を通して「楽しく」プログラミングができるようになっているのは確かであり、挫折を未然に抑えているという面もあるのではないでしょうか。
参考書も(C/C++に比べるとまだまだですが)ある程度はそろっています。
こう考えると、どの言語もまさに「一長一短」な気がします。
皆さんは、どの言語が「初心者に最適」と考えられますか?
2009年4月2日木曜日
いろいろ設定を考えてみる
先程のムービーに関して、いろいろと設定を妄想してみました。
全てがこの通りになるとは限りませんが^^;
・主人公はスーパーロボット系。(あれでリアル系だったら色々怖い)
・某イン○ルスのように、装備の換装次第でさまざまな戦闘に対応できる。(ただし電童のようなシステムではなく、あくまで装備は外付け。本体内蔵の武器とは基本的に干渉しない)
・攻撃の種類は実体剣~ビームバズーカ、さらには突進(?)など様々。だが、あくまでもスーパーロボット風。
・分離、合体をする。これがないとスーパーロボット的におもしろくなさそう。(物理的に合うような変形にしますw)
・大型サーベル(偽SSのアレ)の一振りで、異常重力メカ(第一形態)を易々と破壊できる。(折角のスーパーものですし、楽しいことをどんどん…!)
そして没案もいくつか。(←
・古代遺跡から発掘される。(どこのボル○ャーノンですかw)
・実は脚の中に隠し腕がある。(どこのセラ○ィーですかw)
・4足歩行が可能。(どこのガ○アですかw)
・開始早々敵に奪われる。(どこのサイ○リスですかw)
・戦艦に変形する。(どこのバ○ル7ですかw)
・大きいように見えるが、実は全高2m。(作業用機械のストーリーじゃあるまいしw)
まあこんなもんですw
面白そうな設定を考えた方、是非コメントしていってくださいね!
面白さによっては採用しますので(^^
全てがこの通りになるとは限りませんが^^;
・主人公はスーパーロボット系。(あれでリアル系だったら色々怖い)
・某イン○ルスのように、装備の換装次第でさまざまな戦闘に対応できる。(ただし電童のようなシステムではなく、あくまで装備は外付け。本体内蔵の武器とは基本的に干渉しない)
・攻撃の種類は実体剣~ビームバズーカ、さらには突進(?)など様々。だが、あくまでもスーパーロボット風。
・分離、合体をする。これがないとスーパーロボット的におもしろくなさそう。(物理的に合うような変形にしますw)
・大型サーベル(偽SSのアレ)の一振りで、異常重力メカ(第一形態)を易々と破壊できる。(折角のスーパーものですし、楽しいことをどんどん…!)
そして没案もいくつか。(←
・古代遺跡から発掘される。(どこのボル○ャーノンですかw)
・実は脚の中に隠し腕がある。(どこのセラ○ィーですかw)
・4足歩行が可能。(どこのガ○アですかw)
・開始早々敵に奪われる。(どこのサイ○リスですかw)
・戦艦に変形する。(どこのバ○ル7ですかw)
・大きいように見えるが、実は全高2m。(作業用機械のストーリーじゃあるまいしw)
まあこんなもんですw
面白そうな設定を考えた方、是非コメントしていってくださいね!
面白さによっては採用しますので(^^
昨日のアレ
流石にあれで廃棄するのはもったいないので、何かムービーを作ってみることにしました。
昔いくつかDoGA-Lシリーズでムービーを作った事はある(3作程度、1分~10分)のですが、今回のように「重厚な」ロボットを扱った事はないんですよね。どう動かそうか、いろいろ考えています。
現段階の構想としては、
・10分程度の中規模作品
・フルアクション3D、ただし声は無し(字幕か何かが使えれば良いな~)
・主役は勿論あのロボット
という感じです。
作業の合間合間にやっていくので、どれだけ時間がかかるかも分かりません。
どうか、生暖かく見守ってやってください(何
注)もしかするとREQUIEMのメカが共演で出てくるかもしれません!
昔いくつかDoGA-Lシリーズでムービーを作った事はある(3作程度、1分~10分)のですが、今回のように「重厚な」ロボットを扱った事はないんですよね。どう動かそうか、いろいろ考えています。
現段階の構想としては、
・10分程度の中規模作品
・フルアクション3D、ただし声は無し(字幕か何かが使えれば良いな~)
・主役は勿論あのロボット
という感じです。
作業の合間合間にやっていくので、どれだけ時間がかかるかも分かりません。
どうか、生暖かく見守ってやってください(何
注)もしかするとREQUIEMのメカが共演で出てくるかもしれません!
2009年4月1日水曜日
エイプリルフール
2009年度スタート。
初めてのエイプリルフールをやってみましたよ。
これは2009年エイプリルフールのネタです。
紹介文面は以下のようにしていました。
------
2009年度勧誘会にて公開予定の新作の概要です。
今までのIllusionシリーズからの完全脱却を目指しましたので、キャラクターは勿論のこと、背景ストーリーも完全新規で作られています!
作品名:「大空を駆ける者 -the guardman of the sky-」
ジャンル:3DRTS
プレイ人数:1人~16人
------
では、偽のスクリーンショットをどうぞ。
ベースはDoGA-L3で、周りの文字やらゲージやらはPaintで作っています。
注:画面はにせものです。
この機体、折角作ったのにこれで破棄してしまうのはもったいないんですよね。
何か良い活用方法はないものでしょうか…?
あ、「それなら作れ」というのはナシの方向で…www
それでは皆様、今年度も頑張って行きましょう!!
初めてのエイプリルフールをやってみましたよ。
これは2009年エイプリルフールのネタです。
紹介文面は以下のようにしていました。
------
2009年度勧誘会にて公開予定の新作の概要です。
今までのIllusionシリーズからの完全脱却を目指しましたので、キャラクターは勿論のこと、背景ストーリーも完全新規で作られています!
作品名:「大空を駆ける者 -the guardman of the sky-」
ジャンル:3DRTS
プレイ人数:1人~16人
------
では、偽のスクリーンショットをどうぞ。
ベースはDoGA-L3で、周りの文字やらゲージやらはPaintで作っています。
注:画面はにせものです。
この機体、折角作ったのにこれで破棄してしまうのはもったいないんですよね。
何か良い活用方法はないものでしょうか…?
あ、「それなら作れ」というのはナシの方向で…www
それでは皆様、今年度も頑張って行きましょう!!
登録:
投稿 (Atom)