プログラミング初心者が、学ぶ言語としては、何がいいでしょうか?
いきなり、C言語や、Javaや、C++や、C#は無理があるのでは?
初めは、命令を打ち込むと、すぐに反応があるようなものがいいのではないかと思います。
いわゆる、インタープリターです。
インタープリターというのは、命令を逐次実行するタイプのものをいいます。
逆に、コンパイラーは、プログラムを、実行可能ファイルに変換してから、あとで、実行するたいぷのものをいいます。
ここで、出てくるのが、Microsoft BASICです。
古くは、N88 BASICなどがありましたね。
間違っても、Visual BASICではありません。
Visual BASICは、現在の通常業務でも使えるように、拡張されていて、単純ではなくなりました。
一部では、BASICは、初心者が学ぶ時に、避けなければならない言語というひともいます。
が、本当にそうでしょうか?
確かに、BASICと、C言語では、メモリーに対する考え方が全然違います。BASICはメモリーを確保しなくても、どんどん、文字列を追加できます。C言語では、メモリーを確保しておかないといけません。
プログラムが長くなってくると、GOTOだらけのスパゲッティプログラムになりやすいです。
グローバル変数なので、プログラムが長くなってくると、大変です。
そういう欠点はありますが、あまり長いプログラムを作らないのであれば、大丈夫でしょう。(^^;;;
最大の問題がありました。
それは、IF ...THEN.... ELSE です。
THENと、ELSEのあとに、ちょっとしかかけないことです。
簡単な処理ならいいのですが、あまり複雑な処理は、かけません。
どうしても、複数行にわたるような処理は絶対かけないです。
だから、どうしても、IF ... THEN GOTO 500 ELSE GOTO 600 などとして、GOTOでジャンプして、別のところに書かないと行けなくなります。
とんだ先も、さらに、GOTOで飛ぶので、立派な、スパゲッティプログラムのできあがりです。_ノ乙(、ン、)_
うーん。これは、困りました。。
やっぱり、Microsoft BASICに、構造化プログラミングが追加されているやつが、あればいいですね。。
もちろん、ダイレクトモードの実行も可能で。。
ないよなぁ。。(汗)
そうか。。GOSUBで飛んで、帰ってくればいいじゃん。
それなら、GOTO問題からは、解放される。。
つまり、IF ... THEN GOSUB 500 ELSE GOSUB 600 とするのです。。
うーん、
ただ、IF THENのあと、次の行のIF文はスキップしたい場合も、GOTO文が使われます。
ELSE IFがないためです。。
うーん。