1. 無料アクセス解析

crossroad's Blog

Javaを中心にした技術ネタなど。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

注目のWebフレームワーク Apache Wicket

# 久しぶりの技術ネタ。。。ほんと、ここのところ技術的にチャレンジングな仕事してないんすよ。。。

Java のWebアプリフレームワークと言えば、Apache Struts が有名ですが、
今個人的に大注目なのが、Apache Wicket(ウィケット)


他のフレームワークとはかなり赴きが違っていて、単純に言うと、
「AWTやSwing みたいな感じで、Webアプリを開発できるフレームワーク」と言ったところでしょうか。

ここで「ほほ~」と思った方は、Wicketをぜひ試してみてください。
懐かしさと感動がきっとあります。

逆に「Swingってなんやねん」と思った方は、Wicketは難しい...と言うか
考え方を変えないといけないかもしれません。


もう少し噛み砕いて言うと...

 ・オブジェクト指向を意識したフレームワークです。
  例えば、Struts 等では、
   フォームBEAN  ・・・データ
   アクション  ・・・ロジック
  のように、データとロジックを分離しています(つまり、手続き型の設計思想)。

  これに対して、Wicket は画面の構成要素(テキストボックスとかボタンとか)を、
  コンポーネント化し、データとロジックをカプセル化します(オブジェクト指向)。

  例えば、テキストボックスコンポーネントは、
   自分にどのような値が入力されていて  ・・・データ
   それをどのように値検証し、どう処理するのか  ・・・ロジック
  を持っています。

  プレゼンテーションロジックは、このコンポーネントを組み立てることで実装していきます。
  オブジェクト指向的な実装となることで、より自然に、簡潔にプレゼンテーションロジック
  を開発することができます。
  (コードの雰囲気的には、前述のAWT、Swingや、Adobe FLEX に似た実装になります)

 ・作るのは、JavaとHTMLだけです。
  記述しにくく、デバッグもしにくいJSPのようなものはなく、ただのHTMLで画面を作れますので、
  画面デザインしやすいです。

  また、面倒で記述誤りをおかしがちなXMLなどの設定ファイルもありません。
  設定は、全てJavaプログラムとして記述します。
  「それって、設定変更が大変じゃん」と思うかもしれませんが、実際問題として
  設定ファイルにしたから設定変更が楽になっているか?と言うと疑問です。
  それより、Javaプログラムとすることでより柔軟かつ確実に設定を定義できます。
  (もちろん、実装の仕方次第で設定ファイルを使う事も可能です)

と言った特徴があります。

常々、JSPが非常にうっとおしくて開発効率を低下させていると思っていたので、
2番目の特徴は結構大きなアドバンテージになると思います。

1番目の特徴については、個人的には非常にうれしいです。
基本的にオブジェクト指向が最強!と思っている人間ですし、
JavaもAWTやSwingもやってきたので、ごくごく自然な設計思想だと感じています。



ただ、問題もあります。

 ・まだメジャーとは言い切れず、日本語の情報源が少ないので、Strutsなんかと比べると
  技術リスクが高くなってしまいます。

  ここは、アーキテクトが頑張るしかないかな、と。

 ・前述1番目の特徴として挙げた「オブジェクト指向」の敷居が高いこと。
  昨今、Javaをやっていてもオブジェクト指向を意識した設計をすることは少ないです。
  おそらく、Javaプログラマの中にはオブジェクト指向を理解されていない技術者も多いはずです。

  なので、実装スキルはStrutsのそれに比べて、高いものが要求されると思われます。

  Wicketのサンプルコードを見るとわかりますが、無名インナークラスを多用したり、
  変数のスコープを意識する実装スタイルは、慣れないと読む事すら難しいです。
  (くどいですが、Swingの経験があれば、すぐにわかるんですが...)

  また、実装の自由度が比較的高いことも、スキルレベルの低いプログラマには厳しいはずです。
  下手すると、スパゲッティコードだらけになる可能性アリ、です。

  なので、これまたアーキテクトがうまく導いてやらないといけないと思います。


と言うわけで、万事オッケーなフレームワークではない(と言うか、ここにもそんな"銀の弾丸"はない)ですが、
僕としては
「これからはStrutsなんて使ってらんねー。Wicketだ!!」
と言い切りたいくらいです。
あぁ~実際のプロジェクトで使いたい!!
でも現実的には難しいかな...特に大規模プロジェクトになると...orz
Wicketと使ってるプロジェクトがあったら誘ってくださいm(_ _)m

とにかく、オブジェクト指向な頭を持っている技術者であれば、超自然に受け入れられるはずで、
ある程度のJavaとオブジェクト指向のスキルがある開発チームであれば、
Strutsなんかよりもずっと使いやすい
と思います。


なお、日本の情報源としては以下があります。
 ・Wicket-Ja
 ・書籍 オープンソース徹底活用 WicketによるWebアプリケーション開発

関連記事
スポンサーサイト

テーマ:プログラミング - ジャンル:コンピュータ

  1. 2009/04/03(金) 14:56:44|
  2. ソフトウェア開発 Java
  3. | トラックバック:0
  4. | コメント:0
<<民主党のゴール | ホーム | FX にチャレンジ>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://bagineer.blog59.fc2.com/tb.php/194-1915a549
この記事にトラックバックする(FC2ブログユーザー)

プロフィール

crossroad

Author:crossroad
関西在住。男。
フリーランスのソフトウェアエンジニア。
エレキベース(Rock&Roll)とお酒が好物でございます。

カテゴリー

タグリスト

Java F1 フリーランス ベーシスト HARRY TheStreetSliders iPhone FX お酒 Seasar Maven eclipse Wicket マイホーム 野球 プロジェクトファシリテーション Rails Ruby UML お店 ソフトウェア Tomcat S2Flex2 jsf Teeda Eclipse タグライブラリ ajax タスク europa mylyn trac 

ブログ内検索

最近の記事

最近のコメント

最近のトラックバック

カレンダー

07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -

月別アーカイブ

全ての記事を表示する

全ての記事を表示する

Twitter


RSSフィード

リンク

このブログをリンクに追加する

アクセスカウンタ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。