9

私は jsps とサーブレットを使用して多くの Java Web 開発を行ってきましたが、このアプローチは簡単で柔軟であることがわかりました。ただし、データベース接続の管理など、関連する基礎作業の一部はかなり面倒であり、新しい Web アプリを軌道に乗せるだけでもかなりの作業が必要です。

そのため、フレームワークを初めて使用することを検討していますが、フレームワークに対する私の印象は、ほとんどが大規模な J2EE アプリケーションに使用され、多くの複雑な構成を伴うということです。私が探しているのは、(最初の学習曲線の後) 新しい Web アプリをできるだけ早く起動して実行できるようにする単純なものです。

私の質問は、単純な Java Web アプリケーションにフレームワークを使用することは理にかなっていますか?

ここで既に尋ねられているので、使用するフレームワークを尋ねているわけではないことに注意してください (実際にフレームワークが推奨されている場合) 。

4

14 に答える 14

8

Web フレームワークを使用しない場合は、通常、Web フレームワークを作成することになります。

于 2009-01-01T20:29:49.393 に答える
7

それは非常に理にかなっています。私のチームは、オープンソーススタックで5年間の大部分を費やしてきましたが、すべての新しいWebアプリを作成するために使用する「シード」プロジェクト(appfuseのように機能します)があります。アプリを維持するという視点からの単純な2つのポケットベルでさえ、他のすべてのアプリと同じように見えますが、少し小さいです。

要するに、現時点では投資の見返りは得られませんが、プロジェクトが発展し、それを維持するにつれて、見返りは得られます。

于 2008-12-31T19:53:06.847 に答える
7

はい、次の理由で Web フレームワークを使用します。

  1. ナビゲーション機能とコントロールの向上。それらは必要ないかもしれませんが、いつでも必要な場合に使用できるように用意されています
  2. 他の人が指摘しているように、アプリは時間の経過とともに成長し、将来のある時点でフレームワークの必要性を感じるでしょう. ページやナビゲーションを追加する必要がある場合
  3. セキュリティや DB アクセス フレームワークなど、他のフレームワークにプラグインできる機能。Spring は、Java の世界における代表的な例です。Spring を使用する必要はありませんが、Struts、Spring MVC、Hibernate、Acegi などとうまく接続できます。すべての配管を自分で行う手間を省くことができます。
  4. サポート!!!優れたフレームワークには、ほとんどの場合、フレームワークをサポートし、質問をして回答する活発なコミュニティがあります。

最初は面倒に思えるかもしれませんが、将来的には間違いなく多くの時間を節約できます

于 2008-12-31T19:33:46.887 に答える
3

どのフレームワークを選択するかは、実際には非常に重要だと思います。Spring MVC のようなものは、コードの邪魔にならず、既存のものをそのまま実行することができます。他のフレームワークには、物事をどのように行うべきかについて、より具体的なアイデアがあります。

于 2008-12-31T19:34:45.950 に答える
2

はい、それは理にかなっています。ただし、あなたの質問に暗示されているのは、間違った (あなたにとって) フレームワークは、価値があるよりも苦痛になる可能性があるということです。それは本当です。一部の重い J2EE フレームワークと、grails のような軽くて陽気なフレームワークとの間には、世界の違いがあります。

于 2008-12-31T19:41:35.263 に答える
2

いいえ、次の場合を除き、そうではありません。

  1. チームで Java の経験がない
  2. あなたは数時間で準備ができていなければならないプロトタイプをやっているだけです
  3. アプリケーションの作成を許可するほど開発者を信頼していない
  4. 開発者に学習と改善をさせるつもりはない

フレームワークを使用する際の危険には、次のようなものがありますが、これらに限定されません:

  1. すべてのフレームワークの欠陥を自分で上に置きます
  2. フレームワークを完全に理解するまで、現実的な見積もりを行うことはできません。
  3. あなたのチームはウェブサーバーのプログラミング方法を学ばないでしょう
  4. コードを書いて問題を解決する代わりに、チームが Google で過ごす時間が増えていることに気付くでしょう。

オープンソース フレームワークを選択することの唯一の最悪の点は、社内に別の R&D チームがあり、そのチームが「完全な究極の企業フレームワーク」を作成することです。

于 2010-11-21T11:14:36.620 に答える
2

代替手段は何ですか?自分で巻く?すべてのナビゲーションとロジックを JSP に埋め込むのですか?

Web フレームワークに価値があるという意見に同意します。現在、文字通り何百もの (Struts、JSF、Spring、Wicket など) があります。あなたに合ったものを選んでください。

于 2008-12-31T21:15:51.673 に答える
2

アプリケーションには次の 2 種類があります。

1) 破棄して二度と使用しない種類のもの。したがって、モジュール性、保守性、明快さについて心配する必要はありません。

2) 本当の種類。

アプリは、現在計画しているよりも大きな機能セット/ユーザー ベースを拡張、スケーリング、または提供する必要がないように思える場合があります....その認識は常に間違っていることを保証します.

フレームワーク、特に Java の MVC の Struts、MVC と依存性注入の Spring、オブジェクト リレーショナル モデリングの Hibernate などはすべて、コードのモジュール性、保守性、明快さにつながる非常に価値のあるツールです。それで、あなたの最初の質問に答えるために.... はい、強調して。

于 2008-12-31T21:36:03.520 に答える
2

はい、それは理にかなっています。アプリは成長および変化する可能性があり、将来、フレームワークが簡単に提供できる何かが必要になる可能性があります。

たとえば、私の職場には単純な jsp/サーブレット アプリがあります。上で説明したことのために、書き直す必要があります。誰かがフレームワークのセットアップだけに時間を割いてくれていれば、今日の私たちはより良い形になっているでしょう.

于 2008-12-31T19:23:39.980 に答える
1

フレームワークを使用すると、学習曲線が原因で Web アプリの開発にオーバーヘッドが追加される場合があります。ただし、選択したフレームワークによっては、次の利点を実現できる場合があります。

  1. スケーラビリティ
  2. 保守性
  3. モデルの明確な分割 (例: MVC)
  4. すぐに使えるコンポーネント (SessionManagement、認証など)
  5. サードパーティのプラグイン
  6. フレームワークから継承されたモジュール性
  7. 他にもたくさん。

その上、学習曲線は可変要因です。スキルによっては、他のフレームワークより習得しやすいフレームワークもあります。

于 2009-01-02T16:47:05.183 に答える
1

フレームワークの使用を検討することは、それが新しい知識の領域を提供する以外の理由でなくても、間違いなく理にかなっています。フレームワークの学習に投資する時間があれば、それがどれほど単純であっても、新しいプロジェクトでそれを使用する方が簡単かつ迅速であることがすぐにわかるでしょう。

また、SamBeran の投稿に投票できるのであれば、そうします。フレームワークを使い始めるには、「ああ、おお、定型文をもう一度書く必要はない!」という瞬間がいくつかあります。

于 2011-04-30T13:36:57.013 に答える
1

しかし、フレームワークに対する私の印象は、それらは主に大規模な J2EE アプリケーションに使用され、多くの複雑な構成を伴うということです。

必ずしもそうではありません。優れたフレームワークは、小さなアプリから非常に大きなアプリまで対応できるように、適切にスケーリングできるように構築されています。今日のフレームワークの多くはゼロ構成に移行しているため、使いやすくなっています。

フレームワーク自体を学ぶには最初の努力が必要ですが、その投資は最初に構築するアプリケーションで元が取れます。また、 AppFuseなどのメタ フレームワークは、フレームワークが事前に構成されているため、開始がさらに簡単になります。

于 2009-01-01T05:31:40.347 に答える
1

フレームワークは、ほとんどのアプリケーションにとって意味があります。独自のフレームワークを構築するか、他のフレームワークを採用する必要がある場合があります。最も重要な問題は、データ構造の粒度です。これが意味することは、データを入力するだけでよいのか、それとも動的コードを解析、コンパイル、実行する必要があるのか​​ということです。

フレームがゲージとして機能し、左側がオープンソースまたはクローズドの既存のフレームワークであり、右側がすべてカスタムフレームワークであると考える場合、そのフレームワークの上にコードを重ねると、複雑さが増します。右の方へ。右に行けば行くほど、フレームワーク (IMO) に苦労します。

ただし、既存のフレームワークからカスタム フレームワークに徐々に移行することもできます。

あなたのビジネスについての質問もあります。銀行や病院など、ソフトウェアをコア コンピテンシーと見なさないビジネスで働いている場合は、構築するフレームワークの量にそれを組み込む必要があります。

結論として、ある種のフレームワークは常に役に立ちます。

于 2009-01-01T05:43:18.763 に答える
0

私はそれを使用すると思います - あなたが言ったように、単純なJava Webアプリでさえ、ものを立ち上げて実行するのはかなり面倒です。このフレームワークが仕事をより迅速に完了させ、必要なサービスを提供するのに役立つなら、それは理にかなっていると思います。

于 2008-12-31T19:23:03.647 に答える