今後必要になるマスター言語
JAVA
RUBY
C++
PL/SQL
JAVA
JAVAアプレット
JAVAサーブレット
JAVAscript
この3つのうちJAVAServletおよびJavaScriptは必須。
条件としてJavaBeansについて的確な知識があり、自分で設計取り回しができるレベル。
JavaBeansの設計とは、JAVA言語特有の空間的なソースやデータの配置を把握してることが条件なので、システムエンジニアへの質問もしくは仕様理解に努めること。
国内外問わずシステムのシェアはWINDOWS主体でありほぼJAVAで統一されている。
さらに動的HTMLなどについてもJAVAサーブレットの知識が流用される。
JavaScriptの知識については特に必要ないがBeansその他に直結するケースが多いので仕様確認。
RUBY
この言語についてはJAVAのサブルーチンとしての位置づけで利用される。
共通部品としてのC++の代替として使われる。
今後C++やRUBYメインで、JAVAがサブルーチンとして使われることも考えられなくはないが
生産性及びトータルスケジュールや予算もあり、ほぼJAVAと変わらないため今後もそうなる。
c++
C++についてもJAVAメインルーチン & RUBYサブルーチン & C++ライブラリの関係性。
そのためC++についてはMSDNに精通し、HDDやメモリについての影響具合を瞬時に理解できること。
(バスについてはその限りではないそれがC++のメリット)
JAVAでもRUBYでも理解できればほぼ両方できるので問題はない。
C++についてはアセンブラとのセット言語であるのはどこまでも変わらずで。
単独でC++を学ぶ理由は全くない。
通常、JAVAやRUBYの知識でライブラリがしっかり把握できること。
その前提でC++ライブラリの説明書きが記載されてる。
この原則の考えを持っていけば会議などでも円滑に進む。
MSDNについてはMicrosoftのライブラリのみではあるが、そこにあるものでMSライセンスでないものをGITなどで検索すれば同等のものがあるかもしれない。
基本的にはMSDNこそC++である。
C++の使い道はアセンブラとのセットでコンシューマーのゲーム開発のみ。
PCゲームはシステム屋とほぼ同じ。
モバイルゲームについては独自のライブラリが多数あるので独自言語独自仕様が必須で新規モバイルゲームは全時代の資産がないため前途多難です。
(更にはほぼ全社フロント系である)
上位下位関連性
上位言語下位言語のように関連性上位というのがある。
JAVA > RUBY > C++ > アセンブラ
個人的な趣味や理想や美学のようなものでいうと
JAVA ≧ RUBY ≧ C++ == アセンブラ
このようになっていくべきである!とは思う。
現実、JAVAはRUBYの代替にはならない。
あくまでもJAVAと同等か関連性下位の言語がRUBYである。
PL/SQL
オラクル社のSQL言語でこれに準ずる言語はいくつかあるが、すべてPL/SQL準拠でできているのでここが必須。
まとめ
JAVA(BEASN含む) ✙ PL/SQL ✙ JavaScriptが
一番シェアが続き、予算にも優しく、基本仕様が今後変更されることもない。
そのほかは共通部品サブルーチンとして使われるので、中小の請負の一部でしか開発はないものと思われる。
rubyに限らずシェアと予算とニーズ予測の外側にある言語については、趣味として扱われるので取得する理由も読む理由もない。
(サブルーチンとしてどうか、というときにMSDN検索すればよい。)