#68 Article 8591 Posted at 1995/10/31 06:58:41 by Ami (MAP404) [BASIC]

Subject: Re: プログラムを始めたいのですが /8587

>>で、学校の友人に聞いたら、いきなりC言語やれ!」などと言われてしまったの
>>です。やっぱ「ビジュアル・ベーシック」とか、初心者向けの言語から入るべ
>>きでしょうか?誰か教えて下さい!お願いしますぅー!

 音無響子さん、はじめまして。

 日経mixでも「はじめてプログラムするのですが言語は何がいいでしょう?」と
いう質問があって、結構レスポンスが付いていました。独断でまとめると

・C言語
 ちょっとしたテキスト処理のユーティリティ等を書くのに便利。それなりのアプ
リ等を書けるレベルに達するのは、その道のプロを目指す一部の方だけである。特
にWindows下でのプログラミングは、覚えるべきルールと作業量が多い。VC++
などは素人が手をだすものではない。
 が、プロを目指すならC言語は「空気や水」に相当するもので、「どれにしよう」
という選択科目ではなく、これ無しでは済まされない。
 書店に膨大な「C言語入門」という書籍があるが、「C言語中級」「C言語上級」
に相当するものは極めて少ない。これは、「C言語やってみるか?」と奮起しなが
らも、中級に進めず挫折を繰り返し「入門」書をコレクション?する人が多いこと
を示していると思える。
 C言語を学ぶには、絶対にアセンブラの知識が必要である。アセンブラで大きな
プログラムが書けるという技量は不要だが、アセンブルリストを見て、それぞれの
意味とか、意図が理解できるレベルは必要。なお、CPUによってアセンブラもい
ろいろあるが、どれか1つでもマスターしておけば、「アセンブラ的思考」が身に
ついたといえるので、あれこれと覚える必要はない。

・VisualBasic
 8ビットの時代の入門言語がBasicだったことからもいえるように、Windows全盛
の時代でも、「楽しいプログラミング」(つまり最初から努力に比例した大きさの
結果が得られること)ができる言語として御勧め。

・Delphi for Windows
 昔のTurboPascalの位置付けに相当する。BasicやCと比較して、Pascalという性
格上、やや形式ばった文法という印象を受ける。が、コンパイラということもあり
VBよりも高速で小技のきいたプログラムが書ける。BasicよりもPascalのほうが入
門者への敷居は高いと思える。

・Awk(jgawk)
 フリーで入手できるテキスト処理の言語。Basicよりも手軽に高度なテキスト編
集処理が可能。通信ログとか表計算のCSVデータの「切った貼った」が容易に
実現可能となる。ちょっと頑張れば、表計算ソフトもどき(非対話型だが)のこと
までできる。
 1行プログラムでもかなりのことができる。

・Perl
 手軽にテキスト処理がAwkであるなら、Perlは「手軽にC言語パワーを」という
雰囲気の言語だと思う。これはUnixのシステム管理者が実務(雑務?)を手早く
処理するためのものと思える。最初に覚える言語としては不適当。

・COBOL
 汎用機で主流の事務処理言語。ポインタという概念が無い為、C言語のように
「暴走」ということは起きない(無限ループに落ちることはあるが)し、金銭計
算向きの機能が強いため会社の書類作成に強い。
 パソコン用処理系は少なく、価格も高価。
 大企業では、いまだに過去の遺産(負債?)としてCOBOLを使用しているので、
覚えていて役に立つ時があるかもしれない。

・PL/I
 パソコン用処理系はゼロと思える。IBMと日立系マシンだけで利用されていた
という気がする。なんでもありありの巨大言語で、「PL/Iをマスターした」とは
なかなか言えない奥深ーい言語。
 もう死語といえるかな?無視してもいいですね。ちなみに情報処理試験では、
僕はPL/Iを選択した。PL/Iが試験に採用されてすぐだったので出題者側の知識も
乏しいのか簡単な問題だった。


 えー、ここまで書くと「どれにしよう」と迷われると思います。「将来その道
で飯が食える程度に」ということでC言語を選ぶとなると、アセンブラが避けら
れないし、「趣味の日曜プログラマー」でVBというのは、ちょっと物足りない
気もするし他人との差がつかないし、あまりカッコ良くない・・・。


 日経mixでの質問者は、結局「とりあえずお金がかからない」という基準で選
択してしまったようで、相談にのった側としてはちょっと「しらけた」という結
末だったのではないか?と思ってます。

 まあC言語から入って、アセンブラを学んで地道に基礎を固めながら、時々は
VBで遊んで気分転換するというのがお勧めかなあ。


 ちなみに、僕の場合、Watcom C/C++を使用してDOS Extender(再配布フリーの
ものが含まれている)下のプログラミングをしています。ExtenderなのでDOSで
あってもうん100KBの配列を多数作ったりしてEXEサイズが1.5MBになったりし
てます。
 C言語はソースコードで販売されているデータベースソフトのソースとにらめ
っこして覚えました。

                                  from ami (MAP404)