4月中旬から新入社員教育で、Javaの講師を担当するのですが、教える内容についてちょっと迷っています。
プログラミングの教育を代々行ってきた人が、私に引き継いだので内容を見てみました。私が新入社員で入社したときからほとんど内容は変わっていません。
プログラミングの基礎として制御構文などは必要だと思うのですが、細かいアルゴリズムの練習なんかもするんです。私が教育を受けた時はC言語だったのですが、それの移植版って感じです。
カレンダーを作る(うるう年の計算、曜日の算出、祭日の計算とか)、ソートアルゴリズムとか。
アルゴリズムの学習もいいのですが、実際に業務では標準クラス使うのが当然なので、そんなことよりもコレクションフレームワークとか、java.ioとかやったほうがいいのではないかと思ったのです。
このあたりは、「プログラミングを全般的に学ぶ(Javaを言語として採用)」なのか、それとも「Javaプログラミングを学ぶ」のかの違いがある気もしました。
たまたま読んだ、Java Press Vol.47には『新人研修「担当者」必見』という記事がありました。それによるとプログラミング基礎教育のカリキュラムは大雑把にこんな感じ(6日間)
- Javaテクノロジ概要
- プログラミング基礎
- オブジェクト指向プログラミング
- 例外処理
- 基本パッケージとコレクション
- ファイル入出力
- スレッド
やっぱり、Javaプログラミングの基本は抑えますよね。確かにJavaを学ぶのには、これぐらいは必要な気がします。(スレッドは要らないような気もしますが。)Javaの講習ではなくあくまでプログラミングの講習だとしても、例外処理や、コレクションは入れたほうがいいと思いました。
いまやコレクションや例外処理は、どんな言語でも基本的に備わっているものなので。