Challenge Engineer Life !

エンジニア人生を楽しみたい!仕事や趣味で学んだ技術的なことを書いていくブログです。

Java EE 6を3ヶ月やってみて感じたこと

昨日でなんとか仕事納めとなりました。

今年8月に「ASP.NETではなくJavaでWeb開発してみないか?」という話を受け、初めてJavaの世界に触れ、実際に実装(まだプロトタイプレベルですが)をしてから約3ヶ月が経ちました。JavaもWeb開発もゼロスタートで、未だに全然勉強が足りないことを日々痛感しますが、感じたことをまとめようと思います。

最初にしたこと

JavaでWeb開発というと、J2EEとかいうやつでJSPとか使うのかな?みたいなレベルでしたが、ネットで情報を調べると最近ではJavaEEと呼ばれていて、JavaEE6が最新だとか。
で、書籍ないのかな、と調べて出会ったのが「Beginning Java EE 6 GlassFish 3で始めるエンタープライズJava」でした。

全てのスタートはこれ基準となり、今でもそうなっています。Beginningというとおり、初心者な私にもとても読みやすく、かつ楽しく読める本でした。

標準的に使うものは何…?

上記の本からスタートして、JSFJPAEJB等を知りました。
ただ、ネットで調べていると、StrutsやSpringなどのフレームワーク情報がほとんどで
「あれ…Java EE 6は…?」
みたいな印象を受けました。不安もあったのでOracleさんやその他イベントに参加して、様々な歴史的流れがあったことを知りました。

今後どうなるかはわからないけど、信じてやってみようとJava EE 6に絞りました。

しかし実際にモノを作り出すと、とにかく何がスタンダードなのかがわからない状態。

JSFの画面コンポーネントでも、様々なものがあるし。
JPAのO/Rマッパーも様々なものがある。
ログ1つとっても、Java標準のloggerはいけてなくて、Log4jが主流だったけど、今はLogback+SLF4Jが…とか。

そもそもJSFがいけてない、という話も多々みたりして、「自分が使おうとしている技術には何か問題があるのか?」「もしかしてJava EE開発ってエキスパートじゃないと開発してはいけないんじゃないか。自分のようなJava新参者が触れてはいかんのではないか?」と日々不安を感じるのが正直な所です。

長らくやっていた.NET系(ただしWebじゃないですが)では、こうした迷いは割と少なかったように思います。
基本的にはMicrosoftのこれを使う、とか、.NET Frameworkのこれを使う、とかが決まっているので。
調査に時間を要するものや、習得の学習コストが高いものは、やはりチーム開発をする上では自然と効いてくるので、そういった観点では今もって.NETを利用した開発のほうが良い気がします。

Javaでは、世の中に色々な技術があって、その中から取捨選択できる自由、楽しさがある反面、上述のように調査に時間がかかるのと、プロジェクト上で問題が発生した場合や失敗したときには「お前があれを選んだからだ」とかの揚げ足どりが起きたりする(悲しい)リスクがあるのかなと思います。

海外での情報の豊富さ

Java EEの実装していて悩みが出たとき、とにかく海外では情報がヒットします。
海外では良く使われているんだな、と感じるのと、自分の悩みは間違ってはいないっぽい、という妙な安心感を得ます;
(こういう所で安心感を得る時点でダメプログラマっぽいですが…)
そんなこんなで最近では、まず英語での呼称を調べて、それベースに検索することが先になっています。

国内での情報

一方で、今年参加させて頂いたJavaEE Advent Calendarに並ぶ記事を拝見させて頂くと、自分が情報をうまく探せていないだけじゃないか!と思うくらい、個人ブログ等で様々な情報発信されている方々がいます。これらは細かくチェックしていかねばと思っています。

使われているフレームワークやAPサーバは違うケースも多々あるので、種類ごとにカテゴライズして確認したい所です。
あとTwitter上でも情報は多々流れていることを今更ながらに気づき、こうしたところもチェックしたいし、勉強会なども開催されているようなので、引っ込み思案な性格ですが、できれば参加していきたいなと思います。

さいごに

システムを利用するエンドユーザからすれば、そのシステムが何で動いているかなどはほとんど関係なく、安定して高品位のサービスが使えることが一番なわけで、.NETでもJavaでもその他なんでも構わないはずです。
とにかくシステムを提供する立場として、いかにそういったサービスを提供できるか、構築できるか、常に考えていたいなと思う今日この頃です。

にほんブログ村 IT技術ブログへ
にほんブログ村 にほんブログ村 IT技術ブログ Javaへ
にほんブログ村