• ベストアンサー

JAVAの各フレームワークの比較

(カテゴリに少し迷いましたが。。) お聞きしたいのはJAVAのフレームワークのパフォーマンスについてです。 MVCそれぞれのフレームワークがあるとは思いますが、  よく使われている代表的なもので Seaser2系 Spring Flamework系 Struts1,2 だと思いますが、 それぞれにおいて、ポイントはフレームワーク自身のメモリの使用量や速度、トータルのパフォーマンス等の (プログラミングの方法によるところはあると思いますが)比較している情報、またはサイトでもいいので 教えていただければと思います。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yyama1234
  • ベストアンサー率100% (1/1)
回答No.1

Seaser2の比嘉さんがブログでDIのパフォーマンス比較をしています。 推測するに、フレームワークの選定根拠を明確にしたいという意図での質問だと思いますが、 この根拠を示し、seasar2でいいんじゃないでしょうか?

参考URL:
http://d.hatena.ne.jp/higayasuo/20090403/1238739750
evil_lk
質問者

お礼

お返事ありがとうございます。 こういう情報がほしかったんです。 開発者側フィーリングでもいいかもしれませんが、 経営者層はそういうわけにもいかず。。。 さらに、申し訳ないのですが、 メモリ消費に関して、こういうような情報はありませんでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yyama1234
  • ベストアンサー率100% (1/1)
回答No.2

No1です。 残念ながら、メモリ消費量を観点にした比較は見たことがありません。 私が質問者様の立場だったら、メモリ消費量に関しては、自分で 適当なサンプルを作って検証します。2、3日はかかるかな?w 役に立つかどうかわかりませんが、 質問者様が提示した3つのフレームワークのうち、seasar2がベストだと思う理由を 私が知っている限りで記載すると以下のようになります。 ・seasar2はstruts1.2をラップしたフレームワークであり、  struts1.2より生産性が高いのは明白  (設定ファイルの肥大化など、struts1.2の欠点を克服しています) ・springは、ちょっと前に有償にするとか言って揉めてた。  (今どうなっているかはわかりません。) ・springは機能が肥大化していて、学習コストがこの3つの中では  一番高い。 ・seasar2は国産であり、日本語ドキュメントが充実している。  また、メーリングリストでバグ報告・質問をするとレスポンスが早い ・seasar2は今後、バグフィックス以外の機能追加を行うつもりがなく、  一度学習すれば、末永く使える。 結局3つともオープンソースなので、他のフレームワークで画期的な 機能が出れば、真似することにより、結果的に余り差が出ないと思います。 もちろん、どういうシステムを作成するかにより、まったく異なる 答えになると思いますが、参考にできる部分があれば幸いです。

evil_lk
質問者

お礼

またまた、ありがとうございます。 やはり、メモリのところまではなさそうなんですね。 もしくは、フレームワークというものに対して、メモリの事を考えなくていい 理由などはありますでしょうか? その辺のところから、攻めて(w)行こうかななんて思っています。 私的にはseasar2で行こうとは思っていますが、上の人間が中途半端に技術を知っているもので、 なかなか、難しいところがあります。orz

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Javaのフレームワークの勉強を始めます.

    Javaのフレームワークの勉強を始めます. 以下の3つのフレームワークに関する推薦図書があれば教えてください. JavaとWebアプリケーションの基礎知識はあります. ・Struts2 ・Spring ・JSF

  • javaフレームワークの入門として何が良い?

    今後、会社のWebシステムでjavaのフレームワークを使った開発を行うことになりそうです。(何を使うかは未定) そこで取っ掛かりとして、 どのフレームワークから勉強すると、理解しやすいでしょうか?? 個人的には、strutsがseasar2やspringの基本になってそうなので、 strutsだけでも触れておくほうがいいのかなと思ってるのですが。 如何でしょうか。 また、お薦めの書籍があればご教示ください。

    • ベストアンサー
    • Java
  • Javaのフレームワークについて

    Javaのフレームワークについての質問です。 現在、Webアプリケーションのショッピングサイトのようなサーバー側の規模がちょっと大きくなるものに関しては、スクリプト言語のPHPやRubyの代表的なフレームワークを使って作成しているのですが、Java用のWebアプリケーションのフレームワークもこれから使ってみたいと考えています。 それで、質問なのですが、 (1)現在、Java用のWebアプリケーション作成のフレームワークで世の中で皆さんが一番使われているものってどれになるのでしょうか?私が現在知っている限りでは、Struts、Struts2、JSF(Java Server Faces)、Seasar、Seasar2 くらいがあるのですが、使い分けのコツみたいなものがあれば教えていただきたいのです。(それぞれの、メリット、デメリットのようなもの。) (2)スクリプト言語のフレームワークとJavaのフレームワークの使い分けのようなものも分かれば教えてください。私の認識では、Java用のフレームワークを用いて設計しなければいけないものって、たとえば大手銀行の決済システムとか、かなり規模の大きなものを想定しています。プログラムの動作スピードを上げたい時とか、セキュリティー関係を厳重に行い時などを想定しています。Javaのフレームワークを使うメリットなども分かれば教えてください。 よろしくお願い致します。

  • Webアプリのフレームワーク

    JavaのWebアプリを構築するときは、皆さんはどんなフレームワークをお使いでしょうか?お勧めのものがあれば教えていただけますか?特にトランザクション管理が楽になるものがあればぜひ教えていただきたいです。 今まではずっとjavaのWindowsアプリを作っていました。Webアプリはまったくの素人です。今のところ、 ■以下はほぼ決定: jdk:j2se5 サーブレットコンテナ:Apache tomcat5.x ウェブサーバ:Apache最新 DB:MySQL最新 IDE: Eclipse WTP最新 テスト系:JUnitなど ■以下のライブラリを使うかどうか迷ってます。 ・JSF(よさそう) or Struts、 ・hibernate、 ・Seasar(よさそう) or Spring など よろしくお願いします。

    • ベストアンサー
    • Java
  • 現在のJavaの状況

    Javaの開発は経験があるのですが2年ほど前の話で・・最近の動向には ちょっとついていけてません。ざっくりと下記のアドバイス頂けますでしょうか?。 1.勉強するとなると基本は「Eclipse + Tomcat」? 2.Eclipseは使いやすくなっている?(自分の時は2.xでした) 3.HiberNateなどORマッピングの案件での採用状況 4.SpringなどDIコンテナ技術の案件での採用状況 5.フレームワークはやっぱりStrutsが一般的? 最近のJavaの開発案件に携わられた方、営業の方のお話など是非 聞いてみたいです。上記全部でなくて結構ですので是非お願いします。

    • ベストアンサー
    • Java
  • はじめてのPHP

    こんばんはっ! 私はここ数年Javaをやってきましたが、 最近PHPに興味があり、挑戦しようと思っています。 そこでPHPを始める前に、下記について知りたいです。 ・PHPのバージョンについて 今主流なのは、5でしょうか。 また、5はオブジェクト指向になったという話を聞いたことがありますが、Java風にコーディングできるのでしょうか。 ・IDEについて PHPにはJavaでいうEclipseみたいなものはありますか? また、Eclipseでも開発可能ですか? ・Zend Frameworkについて これはJavaでいうStrutsみたいなフレームワークでしょうか? また、PHPにはMVCのような概念はありますか。 ・PHPの動作環境 Apacheが動く環境なら、どこでも動きますか? また、Javaのように一度書けばどこでも動きますか? ・PHPの書籍 おすすめの本はありますか。 どうぞ、よろしくお願いします。

    • ベストアンサー
    • PHP
  • Strutsなどのフレームワークが必要な開発って

    JAVAを勉強している者です。 これまでJSPやサーブレットを使って、ある程度のシステムが作れる程にはなったのですが、フレームワークの事が気になっています。 少し「Struts」の勉強をしてみましたが、使いづらさと、表示画面への 柔軟性の無さなど、良い面が見つかりませんでした。 また、HTMLベースのソースコードも、フレームワーク独自の形があっ たり、TomcatなどJAVA側のバージョンアップで不具合が生じる可能性 なども、耳にしました。 ●そこで思ったのは、フレームワークを使う状況というのは、次の様な 時なのではと思っています。 ・エンジニアのレベルが、時間さえあれば、一人でJSPやサーブレット  を使ってシステムを作り上げる人と、「if」文や「for」文などの  本当の基礎しか知らない人が混在した開発環境の時。 ・開発プロジェクトで、開発人数が多く(十数人など)大規模なシステ  ムで、柔軟性や工期短縮よりエンジニアの管理をする必要がある時。 ●逆にこんな時には必要がないと考えています。 ・携わる開発者が、一人でサイトを作れるレベルであり10人以内程に  よる規模のシステム作成時。 ・表示画面用のファイルと、他のプログラムファイルを分ける事 (MVC)を意識しすぎる事より、システム変更への柔軟性や、工期が  早くなる事が分かった時。 ・エンジニアのやりがいを引き出す為。 ※個人的には、入力画面はともかく、出力結果などをMVCにこだわると  あまり良い作成が出来ない気がしています。  また、出力画面と処理用プログラムのファイルを分けた場合には、  ソースの確認や編集が行いづらくなります。  ただ、フレームワークを使わない時は、事前にエンジニアどうしで、  一定の関数を使う事を基本条件にすると便利かもしれませんね。 (例えば、~本に載っている関数を使用する等)  もし決まった関数以外で他の関数を使う時は、他のメンバーの了解  を得る等のルールがあると良いかもしれません。  (Eclipse関係の入門書とプラスαの関数で大抵の事は出来るのではと思っていますが...)  多分こうした方が、フレームワークを使うより、エンジニアのやりが  いも向上するし、結果的には効率も上がりそうな気がしています。  また、上記のフレームワーク条件も、完全にそのようにしなければ  ならないのではなく、状況や必要に応じて判断することが大切なの  ではと思っています。  もし、他にフレームワークのメリット・デメリットがありましたら  教えていただけましたらと思っています。

  • Java Struts MVCモデル 正しい書き方

    Java Struts1.3.10 皆でとあるシステムを作ることになったのですが、 JSP・ActionForm・Actionそれぞれの関係の在り方について悩んでいます。 ログイン機能を例とします。 1機能、1Form、1Actionとした場合は: 1.Login.jspでIDとPASSを入力。 2.LoginResultForm.javaにIDとPASSを格納。 3.LoginResultAction.javaでDBチェック(IDとPASSの存在・権限) 4.Result.jspへ遷移。ID・PASS・権限を表示する 使用するファイルは4つとなります。 1JSP、1Form1、Actionとした場合は: 1.Login.jspでIDとPASSを入力。 2.LoginForm.javaにIDとPASSを格納。 3.LoginAction.javaでDBチェック(IDとPASSの存在) 4.ResultForm.javaにIDとPASSを渡す(Sessionなど) 5.ResultAction.javaでDBから権限を取得、ResultFormに格納 6.Result.jspへ遷移。ID・PASS・権限を表示する 使用するファイルは6つとなります。 現在意見が三つありまして、 1.違うForm同士にデータのやり取りが発生するようであれば(1機能とし)、同じフォームにするべきではないのか? 2.Fromのメンバの数が少ないうちは良いが、今後数が増えると可読性が悪くなるから分けるべきではないのか? 3.フォームは同じでないとまずいが、ActionはJSPごとに分けるべき というものです。 1.ではログイン者情報をセッションに保持することは許可しています。(一部例外を認めている) これらはいずれもStrutsフレームワークの範疇から逸脱している、あるいはMVCモデルに反している、そもそも非効率的ということはないのでしょうか? つまりあくまで実装の仕方の問題でしかない、という結論でよろしいでしょうか?

    • ベストアンサー
    • Java
  • web系システムのテストについて

    web系システムにおけるテストについてですが、 一般的には単体テスト、結合テスト、システムテストなどありますが、 web系の場合、どこまでが単体でどこまでが結合でといった境界 がはっきりしません。 たとえば、サーバサイドのjavaの場合、JSP、javaScript、HTML、java など複数の要素が含まれており、なにをもって単体と呼ぶかがわか らず、strutsなどのフレームワークを利用した場合はさらに MVCと機能が分離するためさらにテストが複雑です。 テストフェーズ別の具体的な成果物や、テスト項目、 テスト内容などをご教授いただけないでしょうか。 よろしくおねがいします。

  • プロセスのメモリ使用量の確認方法

    プロセスのメモリ使用量の確認方法についての質問です。 #実際にプログラミングされている人の方が詳しいかと思い、こちらのカテゴリに #質問させて頂きます。 プロセスのメモリ使用量を確認するために、パフォーマンスモニタを使おうと 考えています。 「オブジェクト」に「Process」を指定したときの、「カウンタ」では 何を選択すれば確認できるでしょうか。 カウンタごとの説明は読んだのですが、明確に理解することができませんでした。 識者の方、ご教授願います。 また、その他のツールを使った方法があれば教えてください。