技術とか戦略とか

証券レガシーシステムを8年いじってから転職した普通の文系SEによるブログ。技術のみではなく趣味の戦略考察についても。

プログラミング言語のスキルチェンジのコツ

COBOLからJavaのスキルチェンジは苦労すると良く聞きます。
サーバーサイドCOBOLからフロントエンドJavaへのスキルチェンジの場合は言語の違い以外にも色々覚え直さないといけないことがある(Webサーバの仕様やHTTP通信の仕様等)のでまた別の話になるのですが、単純にCOBOLからJavaというだけでも苦労するそうです。
 
個人的にはCOBOLからJavaというだけでは特に苦労しなかった、というよりプログラミング言語の違いは自然言語の方言の違いぐらいにしか思っていません。
私の前職はメインフレームCOBOLやJCL)のエンジニアが多い職場だったのですが、COBOLやJCL以外の言語でコーディングせざるを得ない時もあります。
(C、BashシェルスクリプトJavaWindowsバッチ、アセンブラVC++…)
そのような場合、プログラミング言語の違いにあまり抵抗感のない私がアサインされることが多かったです。
 
なぜプログラミング言語の違いに抵抗感を感じないのかと考えてみたのですが、私の場合は未経験者時代の基本情報処理技術者試験の勉強で出題される全言語を勉強したことが大きいと思いました。
実務に入る前から、疑似言語のアルゴリズムアセンブラ機械語チックなアルゴリズムCOBOLで良く使われるマッチング処理等のロジック、C言語のポインタの概念、Javaオブジェクト指向の概念を学んでいたので、様々な言語に対応できる応用力が身に着いたのだと思います。
ちなみに、私は「プログラミング未経験者のための基本情報技術者 午後[プログラム言語〕」という本で午後試験対策を行いました。基本情報処理技術者試験で問われる全ての言語について最低限必要な解説がされており、各言語の概念を広く浅く学ぶには最適な本です。
 
プログラミング未経験者のための基本情報技術者 午後[プログラム言語〕 _ 矢沢 久雄, ITアシスト _本 _ 通販 _ Amazon
https://www.amazon.co.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E6%9C%AA%E7%B5%8C%E9%A8%93%E8%80%85%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E5%9F%BA%E6%9C%AC%E6%83%85%E5%A0%B1%E6%8A%80%E8%A1%93%E8%80%85-%E5%8D%88%E5%BE%8C-%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E8%A8%80%E8%AA%9E%E3%80%95-%E7%9F%A2%E6%B2%A2-%E4%B9%85%E9%9B%84/dp/4822282899
 
ちなみに、この本は2006年の古い本なので、表計算の解説はありません。それ以外の言語も、もしかしたら今の午後試験では通用しない部分があるかもしれません。
時々書店で情報処理技術者試験の参考書を立ち読みすることがあるのですが、最近は各言語の仕様を広く浅く解説した本は残念ながら見かけません。午後試験対策本はアルゴリズムに特化した本や表計算に特化した本が主流で、あとはアセンブラCASLⅡ)に特化した本があるぐらいです。
効率的に合格するだけならアルゴリズム表計算に特化するのが一番良いとは私も思うのですが…後々のことを考えると、早いうちに各言語の概念を簡単に学んでおいた方が良いのでは、それをサポートする本が1冊ぐらいあっても良いのでは、と思っています。