Javaの指導にて
最近、新人に偉そうにもJava未熟者の私が教育する場がありました。
そこでわかったことを書いておきます
- なぜJavaはオブジェクト指向であったり、マルチスレッドであったり、例外処理に強かったりするような特徴を備えることになったか?を過去の改善から生まれてきたことを説明する。
- オブジェクト指向の説明は抽象的な階層関係よりも保守容易性の観点から説明する。
- 半導体を組み合わせて電子機器を作るように、APIやコンポーネントといったプログラム部品を組み合わせて作るイメージを図を使って説明する。
- String s = new String("hoge"); のようなインスタンス生成と参照に対して実際メモリ上にどんな風に変数やオブジェクトが割り当てられるか順を追って説明する
ちなみにメインは「オブジェクト指向でなぜつくるのか?」で、歴史的な背景は「Javaの10年」、若干細かいことは「SunJava2認定ガイド」を一部参考にさせてもらいました。
オブジェクト指向でなぜつくるのか―知っておきたいプログラミング、UML、設計の基礎知識―
- 作者: 平澤章
- 出版社/メーカー: 日経BP社
- 発売日: 2004/06/03
- メディア: 単行本
- 購入: 34人 クリック: 448回
- この商品を含むブログ (198件) を見る
- 作者: 岩山知三郎
- 出版社/メーカー: コンピュータエージ社
- 発売日: 2005/11
- メディア: 単行本
- 購入: 1人 クリック: 6回
- この商品を含むブログ (8件) を見る
Sun Java2認定ガイド 310-035&310-027対応
- 作者: キャシーシエラ,バートベイツ,Kathy Sierra,Bert Bates,トップスタジオ
- 出版社/メーカー: 日経BP社
- 発売日: 2003/06/24
- メディア: 単行本
- クリック: 9回
- この商品を含むブログ (27件) を見る
で、反省点はメモリ周りの改善ポイントをうまく説明できなかったこと。
「Cだとメモリを壊す恐れがあるけど、Javaはその心配がない」という説明に対して、
「メモリを壊すという意味がわかりません」という返答が。
そこでアドレスがうんたらかんたらって説明したからいきなり?モードになったらしくそこから行き詰ってしまいました。でもメモリ云々を突き詰めていくとハードウェアに関しても説明しないといけないんですよねー。
何かうまく説明できる資料をみつけないと。
S2でのお仕事が決まった!!
人生初めてお仕事としてS2を使うことができるようになりました(ぱちぱち)。
3週間で設計・製造・テストを15画面に対して実装する必要があります。
リリースは3末。納期は絶対に延期できません。
環境は、S2+S2JSF+S2Daoで、DBはPostgreSQL、APはTomcat5を予定しています。
当初、要件定義と外部設計はGoyaを参考にマジカや操作マニュアルという形で私が全て片付けておいたので、大丈夫かなとタカをくくってたのですが、思わぬところに落とし穴が。
Java初心者の新人にS2のよさ、仕組み、プロダクツの使い方の説明が結構大変そうなんです。
やっぱりJava開発経験がある人にDIとかを説明するのは結構楽だと思うんですけど、Javaのプログラム自体を組んだことがない人に説明するってなると「なんでそんな面倒なことをするの?」と思われちゃうんです。というのも今日購入したSeasar本を読ませたら、まったく理解不能だったようでそういう質問がたくさんありました。まぁ、仕方がないといえば仕方ないんですけどねぇ...。
# でも一番きついのは実は僕自身がJavaとS2の初心者ってところかもしれない(爆)
さぁて、道のりは険しいぞぉ(ToT)