Javaの基本文法を一通り学習した若手社員Nさん。『Java Bronze』の資格も取得し、「よし、これで一通りの事ができるようになった~!!」 と、はりきっています。でも、ちょっと待ってください。本当に、実用的なプログラミングスキルが身についているのでしょうか?
S先輩との、やりとりを見てみましょう。
今回は、Javaの基本文法を一通り学習した若手社員Nさんと職場のS先輩との、やりとりから実用的なJavaプログラミングスキルを身につける方法をご紹介します。
S先輩:
Nさん、Bronzeの資格取得おめでとう!!
Nさん:
ありがとうございます。S先輩のおかげです。かなり自信がつきました。
先週から、デザインパターンの勉強も始めました!!...
S先輩:
頑張ってるね!ではCompositeパターン(*1)って説明できるかな?
Nさん:
はい!!勉強しました。確かこんな感じでしたよね(クラス図を書いてみせる)。
S先輩:
いいね!じゃあ、どういう時に、このパターンが有効なのか言えるかな??
Nさん:
え・・・???
S先輩:
ははは・・・まだまだ理解不足だな。じゃあ、この要件を満たすプログラムをCompositeパターンを利用して、実装することならできるかな??
(Nさんに要件を渡す)
Nさん:
え、えーっと、クラス図がこうなるから・・・。
カタカタ・・・(実装中)
S先輩:
せっかくEclipseを使っているんだから、一から打たなくても、もっと楽に入力できるよ・・・・。
Nさん:
え・・・???
S先輩:
例えばコンストラクタは、こうやってこうやれば、ほら・・・一瞬で作成できるよね!
Nさん:
えーーー!!こんな機能知りませんでした。
S先輩:
よく使う便利な機能は、早い段階で使い慣れておいた方がいいよ。長い目で見たときに大きな工数削減になるからね。そうすれば、短縮した工数を、他のことに使えるよね。
Nさん:
はい・・ありがとうございます。
・・・・・・・・・しばらくして・・・・・・・・・
Nさん:
できました!!
S先輩:
お疲れさま!どれどれ・・・うん、なるほど。これで正しく動くね。
Compositeパターンのメリットは分かったかな!!
Nさん:
はい!よく分かりました。それは・・・(Compositeパターンについて説明)。
S先輩:
そうだね。ただこのプログラム、正しく動いてはいるけれど、ちょっと可読性と処理効率が悪いかな。
Nさん:
カドクセイと処理コウリツ????
S先輩:
まず、プログラムは皆が読むものだから、「読みやすさ」を常に考える必要があるということだね。そして、ロジックの正確性だけではなく、メモリの挙動を考えたとき、無駄なことをしてパフォーマンスを落とさないように、なんてことも考える必要があるんだよ。
Nさん:
そうなんですね。今まで、ほとんど何も考えていませんでした。
S先輩:
あと、この書き方、バグを生む書き方になってしまっているよ!
Nさん:
バグヲウムカキカタ??
S先輩:
そう、あと、ついでに言うと、ここは・・・・・
・・・・・・・・
Nさん:
・・・・・私、もっともっと勉強して、もっともっといろんなプログラム書いてみます。参考書も2冊ほど買ってきたし。
S先輩:
参考書って買っただけで満足して、読み始めて数ページで挫折することってない?
Nさん:
あります!あります!正直「分からないー!!もういいやー!!」という気分になることがあります。
S先輩:
プログラミングスキルを向上させるには、とにかく、繰り返しプログラミングするのが一番だからね!!
でも、一人の力で「勘所」を満遍なく身につけようと思うと非常に大変だ。いい方法があるよ。
Nさん:
なんですか?教えてください!!
S先輩:
それは・・・
学習することがまだまだ沢山あると気づいたNさん。
そのNさんにSさんが勧めたのが・・
◆-----------------------------------------------------
実機演習をとおしてJavaプログラミングスキルを向上、定着させたい方、
をお勧めします!!
*実習付きeラーニングの詳細、学習イメージについては、以下サイトをご参照ください。
【クラウドラボ】Javaアプリケーション編のご紹介
-----------------------------------------------------◆
Nさん:
早速申込みます!!R課長に相談してみますね。
*1 Compositeパターン・・・階層構造を構成するオブジェクトの中で、各オブジェクトが末端かそれ以外かを意識せずに扱いたい場合に有効なデザインパターン。
Nさん:
Javaのプログラミングスキルを一通り習得した若手社員 さらなるスキル向上に向け奮闘中。
S先輩:
○年目の中堅社員 時々辛口だが、積極的に後輩のNさんを引っ張っている。
(2016/03/31)