よく、おっさんや、メインフレームの仕事をやってきたやつとかと話をすると そんな話題になる。
でも、それって全然"Java"じゃなくね?って思ってる。 っていうかどこまでが"Java"?
・オブジェクト指向やデザインパターンと呼ばれる 数々のプラクティスを使いこなせる事。 ・プレゼンテーション側のHTML、JavaScriptを記述できる事。 (最近はAjaxやFlashといったリッチクライアント) ・コンテナの特性や使い方も抑えた上でのServletやJavaBeans (最近はDIやAOPも?)を使いこなせる事。 ・コネクションプーリングやトランザクションも含めた永続化作業を こなせる事。 ・propertiesやXMLを使って依存性をなくしたり、汎用性を高めたり出来る事。 (エクセルマクロを使って自動生成なんてのも含めちゃう?) ・Antのタスクを叩けばオマジナイのようにビルドされてデプロイまで してもらえちゃうようなスクリプトが書ける事。 ・UMLでモデルが書けるとか、TestDrivenで開発できるとか、とか、とか、、
もしや、全部ひっくるめて"Java"って言ってるんじゃないの? 一言で片付けられちゃうのはちょっと寂しいっす。 そりゃ強いとこ、弱いとこあるわけですよ。 全部背負い込むのはしんどいっすよ。。
今のプロジェクトのアーキテクチャは、某巨大SIerが作ったものだけど、 結局グダグダになった状態で、いわゆる"Java"ができるやつ5人でチーム作って、 それぞれ分担して、調査してドキュメントを作って、開発者に展開した。
俺の担当は、ロギング、文字コード、DBアクセスなんていうところだった。
ログはLog4j。プロセスを多重化した流すバッチにはSimpleSocketServer 文字コードはWindows-31j。Oracle側はJA16SJISTILDE。 DBアクセスは、JDBCと暗号化のプロダクトとしてeCipherGate。 性能面でのAddBatch化や1Actionで複数コネクションとか排他制御とか。
今となっては5人のチームで残ってるのは俺1人。 いわゆる"Java"でなんかあったら、俺が呼ばれる。
そう考えると、ちょっとやりがいあるかなぁとか思っちゃったり。 (その割には給料低すぎじゃね?とか思ったり)
って、ズラズラ書いたけど、何が言いたいのかっていうと、
今日午前中にRuby on Railsを触ってみたわけです。 当然Rubyの文法なんて何もしらないけど、とっつきやすそうだったから。
満足せる豚。眠たげなポチ。をみながら その通りやってたら、小一時間で動くものができてしまいました、と。
このフレームワークの特徴として、XMLの設定ファイルが要らないってことなんだけど。 じゃぁ、それをどうやってRails君は実装してるのよ、 ってところに興味が出てきてしまう。
結局、上で書いた"Java"が出来る人っていうのは、 "Ruby"でも似たような着眼点を持つんでしょう。
つまり、技術は移り変わっていっても、 モノの考え方とか、どうやったら楽できるか、とか。 そういう部分は変わらないんじゃないかって。
COBOL→C→Javaで歩んできた人は"なんでJavaなのか" って実感を持って語れるだろうし、 共通してる普遍的な部分って大いにあるはず (たぶんその方が多いんじゃないか?)
そういう人の事を何で呼んだらいいんでしょうね?
アーキテクト? いや、、それ違うよね。。
じゃぁディベロッパーなのでしょうか。
うーん、、なんかそれも違うような気がするけど。
今週の木曜と金曜。 今年も行ってきます。DevelopersSummit。
楽しみだ〜
そうそう、今日新宿ですげぇスタジャン着てるやつがいた。 このロゴがバーンってバックに刺繍されてんの。
もうなんか見てるだけで吐き気しそうでしたわ。