上位階層で使用される言語ほど寿命が短い

例えば、Perlは、PHPRubyPythonに完全に置き換えることが可能だが、C++は、JavaC#に置き換えることはできない。上位階層で使用される言語は開発サイクルが短いが、下位階層(つまりベース)として使用されるプログラムは使用期間が長いので、新しい言語に簡単に置き換えることはできない。


自分の会社の本社で現在開発中の大規模アプリでベースの部分にC++を使用している。特に、C++周辺の言語は良い言語がなくて、JavaC#VMCLRなど中間層があって遅いというのが最大のネックになっていると思われる。


今の自分はまだ新しいものを勉強したいお年頃だが、もっと歳をとった際に勉強意欲がなくなりそうで怖い。そうなるとどちらの階層がメインの業界に所属すべきなのか迷うが、もうすでに業界をまたいだ転職は難しい年齢になってきたので、悩む必要性もなくなってきそうである。最近、中途半端な言語の勉強は意味ないと思うようになったので、勉強する言語と分野を絞ろうかと計画中である。