
プログラミング言語を学ぶ上で一番悩むもの...
それは...
「どの言語を学ぶのか?」
ということでしょう
皆さんは、どの言語を学ぶ方が良いと思いますか?
『HTML+CSS』?
『Java script』?
それとも...
『PHP』?
もしくは、
『Java』ですか?
『Python』ですか?
『C#』ですか?
『VB.net』ですか?
無数にある言語から選ぶというのは、とても難しいものですね...

なにを選ぶか?
プログラム言語は、常に新しい言語が生まれています...
その中で、『これさえ覚えておけばよい』という言語はあるでしょうか?
結論から言いますと...
『そんな言語は無い』
です
なぜなら...
プログラム言語は、常に新しいものが誕生し、古い言語は『お払い箱』になっていくからです
今主流のプログラム言語も、数年たてば『古い言語』と言われます

いったいどんな言語を習得すればいいのか?
その前に、こんな話があります...
以前、就活しているときの面接で、面接官から、
「どんな言語が使えますか?」
「頂いた書類を拝見すると、『VB.net』はされていないようですが...」
と質問がありました。そこで、私は、
「『VB.net』はやったことありませんが、類似している『BASIC』や『VB』はやったことがあります」
と答えました...
すると、面接官は...
「『VB』と『VB.net』は全く違うから...」
と言い放ったのです...
果たしてそうでしょうか...

本当に『全く違うもの』なのか?
結論から言うと、『そんなことは無い』です
今主流になっているプログラム言語のほとんどは、『高水準言語』と呼ばれるものです
『高水準言語』はそのままではコンピューターは命令を実行できないため、『コンパイル』という変換作業をおこない、コンピューターのCPUが理解できる言語へ変換し、プログラムを実行します
どんな言語であれ、実行するのは同じCPUなので、その命令群を記述している言語が『全く異なる』ということはありません
『基本アルゴリズム』を実行するための命令群は、若干書式が異なる程度で、ほとんど共通しています
各言語で異なっているのは、『拡張命令』と呼ばれるものです
『関数』とか『フレーム』などとも呼ばれています
今の『高水準言語』は複雑な動作を実現するために、『拡張命令』を無数に持っていて、それをすべて記憶するのは困難です
必ず『ヘルプ』であったり、『書籍』などを見ながらコーディング作業をする必要があります
これは必然的なものであって、『難易度』には当たりません
まして、「全く違う」という概念には当たりません
『全く違う』というのは、『コンパイラ言語』と『アセンブリ言語』のような、言語体系の異なるものを指します
『高水準言語』は、先ほども書きましたが『基本アルゴリズム』のコマンド体系は酷似しているので、『基本アルゴリズム』をきちんと学んでおけば、言語の乗り換えは簡単に可能です
加えて、『拡張アルゴリズム』や『フローチャート』をマスターしておけば、『フローチャート』に各言語のコマンドを当てはめていく作業をするだけで、ある程度のプログラミングは可能です
その後、言語特有の『拡張命令』に置き換える作業をしていけばよいのです
ですので、『高水準言語』同士で「全く違うから理解できない」ということはありません
まして、『VB』と『VB.net』は『BASIC』を源流とする高水準言語です
BASIC→VB→VB.net
と時代の流れに応じて改良されてますが、根本的な基本アルゴリズムは『BASIC』です
この点は変わりません。
なので、『そんなことは無い』となります

プログラミング言語は何を選べばよいか?
選ぶのであれば、ご自身が『一番興味を持っているもの』でよいと思います
もし、習得するプログラム言語を迷っておられるのであれば、アルゴリズムを学ばれることをお勧めします
『アルゴリズム』は『プログラミング的思考』の根本となる考え方です
『アルゴリズム』をきちんと学んでおけば、今後出てくるであろう『高水準言語』でも対応可能です
ぜひ、一度考えてみてください
それでは、この辺で...
皆さまにとって、良いエンジニア生活となりますように...
