元記事: http://blogs.wankuma.com/jitta/archive/2006/09/21/39290.aspx
私見ですので、私の稚拙な見解が見苦しいと思われる方はスルーを、ご覧になられた上でのご意見もよろしくお願いします。
私はこの部分について静的サイト(現在構築中)で解説したかったので、喰い付かせていただきます。
とは言え、反対意見ではなく、概ね大賛成意見です。
BASICはBeginner's All purpose Symbolic Instruction Codeの略とされています。
現在はBasicと表記しますので、多少意味合いが違うのかもしれませんが、やっぱり初心者用の言語で間違いないと思います。
その上で、現在の所オブジェクト指向が優れているという事を考慮するとセミオブジェクト指向言語であったVB6では無くて、
きちんとしたオブジェクト指向言語としてのVB.NETは入門言語としても時代の流れとして当然であったと思います。
(VB6の方が良かったという方には申し訳ないですが…)
さて、私はVB.NETからはじめました。同時期にVB6も入手していましたし、C言語類としてのC#も購入の視野に入れてました。
VB.NETを最終的に選んだ理由として代表的なプロージャの記述が
VB6 : Private Sub Command1_Click( )
End Sub
VB.NET : Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
End Sub
C# : private void button1_Click(object sender, EventArgs e)
{
}
となり、この3つ比較を比較した際に、
VB6については 『()』に何か省略されているようなものを感じ、理解というか共感が持てなかった。
C#については 『{ }や;』に複数の意味があるのではと考えた。そしてそれを理解するのは記号ゆえに難しいのでは?と思えた。
VB.NETについて多少記述は長いけど、『( )』を詳しく設定することは悪いことではないと思えた。
という素人判断に基づくものでした。
今はその時の自分の直感に感謝しています。w
私の経験はVB.NETをはじめて未だ1年と少し…と大いに未熟です。
ですが今年の6月頃に本屋でC#の書籍を立ち読みした際、「記述は出来ないけど、コードを見てやりたい事が解った。」のです。
VB.NETとC#の記述には、共通点も多く当たり前といえるでしょうが私にとってすごい収穫でした。最初がVB.NETで良かったとも思えました。
経験を踏まえて言わせて頂くと、『現在のVB.NETも大いにBASICのコンセプトをしっかりと継承している。』と思います。
今後の Basic を考える上でJittaさんが言われている様に、これ以上簡単に…というか手軽にする必要もなければ、難しくする(詳細に設定しなければならない)必要もないと思います。
少なくとも詳細に設定するorしたいのであればC#が手頃ですし、C#からC++/CLIへの移行はVBからC++/CLIに移行するよりも容易でしょう。(C++/CLIからCへの移行も違和感無く出来そうです。)
長々と書きましたが結論は、「最初に触れる言語としてはVB.NETを大いにオススメする。」と言いたいです。
そしてVisual Basic .NETは過去の言語ではなく、しっかりと役割を果たしていると言いたいです。
最初の「概ね大賛成」と書かせて頂いた理由としては、Jittaさんの主旨を取り違えているかも知れない自分の読解力の無さに対する保険です。ww
最後に…昨日、新卒採用の試験&面接を行いました。その人たちの中に、専門学校でC言語を学んだけれど修得できず挫折したという方がおられました。
「出来なくないけど、最初からCは俺なら出来ないね…」とつい口から出ちゃいました。^^; 本人かなりビックリした表情でした。^^;;;;