5

職場では、(大規模な... チームに数十人が参加して 1 ~ 2 年の開発が予定されている) プロジェクトが間もなく開始され、「上層部」は Spring 3 を Web フレームワーク (マーケティングの熱気. .. なんでもいい)。

これは些細な Web アプリケーションではなく、Spring 3 の経験はありません (Spring 2 の経験はすでにありますが、専門家ではありません)。Spring 3を学び、コーディングを開始することになっています。

しかし、私は苦労するだろうという気持ちがあります。

Spring 3 GA は 1 年ほど前からありますが、本はまだ追いついていないようです。Pro Spring 3 と、Spring 3 をカバーする Spring の第 3 版がこれまでに見つかった。資料)。

おっしゃる通り、気持ち悪いです。誤解しないでほしいのですが、Spring 3 を学習することは気にしません (簡単か難しいか) が、「プロジェクトの安全性」 (大規模なプロジェクト、短い時間枠... 死の行進の匂い) については確信が持てません。 Spring 3 を使用します。

あなたの体験談を募集します。Spring 3 で大規模なプロジェクトを作成したことがありますか? どのような問題に遭遇しましたか?

4

4 に答える 4

7

スプリング 3 は、スプリング 2 / 2.5 から 100 万光年も離れていません。spring および spring MVC の経験が豊富な場合は、それを選択してください。

ただし、Spring MVC は最高のWeb フレームワークではないことに注意してください。同じ古い概念を少し先に進めるだけです。

Web サイトのアイデアを念頭に置いて作成したものが必要な場合は、Scala Lift、JRuby + Rails、または PlayFramework を試してください。すべてを scala または Ruby でコーディングする必要があると言っているわけではありませんが、これらのフレームワークが Web パーツで優位に立つかどうかを確認し、任意の Java テクノロジ (Spring IOC など) を使用してロジックを構築してください。

また、そのアプリケーションのアーキテクトが潜在的な高速配信よりもセキュリティを必要とする場合、Spring 3 は適切な選択です。

SpringMVC (JSP または JSTL で使用) の欠点の 1 つは、実際にはコンポーネント ベースのフレームワークではないため、複雑でリッチなクライアントには適していないことです。

ちなみに、私はSpring 3 + MVCを小さなWebサイトで使用しており、バックエンド処理が非常に多く、非常に満足しています.

于 2011-04-26T14:39:46.687 に答える
2

Spring Roo: http://www.springsource.org/roo および STS: http://www.springsource.com/products/springsource-tool-suite-downloadを確認することをお勧めします 。

これらのツールを使用すると、データベースからリバース エンジニアリングされた豊富なドメイン オブジェクトを含むデータベース アクセス レイヤー、承認と認証 (Spring Security)、Web UI レイヤー (さまざまなオプション)、ロギングを使用して、文字通り 10 分以内にアプリを生成できます。おそらくあなたのニーズには合わないでしょうが、Spring 3 アプリがどのように「あるべき」かを実際に確認するための優れたオプションです。(STS には、「プッシュイン」リファクタリングと呼ばれるリファクタリング オプションがあり、スケルトンが生成されたら Roo を取り除くことができます)

SpringSource の YouTube チャンネルも優れた情報源です: http://www.youtube.com/user/SpringSourceDev

Spring は素晴らしいフレームワーク ファミリですが、Spring を正しく使用するのは簡単ではなく、間違った方法で使用すると問題が発生する可能性があることに注意してください。一般的には絶対に Spring をお勧めしますが、時間枠の関係で詳細を学習する時間がない場合は、おそらく既知のテクノロジ スタックを使用する必要があります。

于 2011-04-27T10:44:03.740 に答える
1

I am using Spring 3 in my projects. It is conceptually not very different from 2/2.5, at the same time adds lot of shortcuts for achieving the same goodness with less xml (and code).

The thing that i don't like about Spring is the class names/interfaces/packages look like an essay to me : org.springframework.somemodule.somethingmorespecififc.FooSomethingWithBlahContextInBar

Also if you are not using Maven and try to include jar manually, you are doomed. However, large projects should use maven :)

That said, Spring Ioc is excellent choice for any size of application. I am not a huge fan of Spring MVC though and never really used it in project so far. But most java web framework suck.

With spring, application configuration is breeze, like setting up DataSource (connection pool), EntityManager etc. Integration with various frameworks is also much easier like Struts2, Hibernate (JPA), Velocity/Freemarker. LDAP (and Active Directory) via Spring LDAP is awesome, (we are using it).

and Finally Spring security itself can be the sole reason to use Spring in a large project.

You can give a shot to spring 3 using appfuse in almost no time.

于 2011-04-26T15:02:20.360 に答える
0

「大規模プロジェクト」の定義によって異なります。そうは言っても、私は何年も Spring を使用してきました。Spring 3 は、 Springを使いやすいフレームワークとして本格的に始動させた最初のメジャー リビジョンであり、あらゆる種類の依存関係を喜んで受け入れました。

Spring 2.5 は正しい方向への飛躍でしたが、Spring 3 では大幅な改善が行われています。Spring MVC は大丈夫です。それは素晴らしいIMOではありませんが、実用的です。

しかし、Spring 3 自体に関する限り、SpringSource/VMWare を信頼するかどうかを検討する必要はありますが、Spring 3 をテクノロジ プラットフォームとして使用することに何の不安もありません。(そうは言っても、SpringSource を信頼しないと言う理由はありませんが、OSGi とクラウド コンピューティングに対する彼らの理解は... 奇妙です。)

Spring がプロジェクトの寿命に悪影響を与えることはありません。Spring で使用するコードを作成すると、インジェクション フレームワークを利用するとテストが容易になる傾向があるため、コードの品質が高くなる傾向があります。

于 2011-04-26T14:37:06.467 に答える