14

春のフレームワークについて学ぶために、Spring in Actionという本を数週間読んでいます。私は約 2 年間のプログラミング経験が主に Java であり、Ruby と Python のあちこちで気を散らすものがあります。

最初の数章を読んだ後、Spring の依存性注入の重要な点がよくわかりませんでした。私はAHAAAの瞬間を期待していましたが、まだそれを経験していませんでした。私は何か重要なものを見逃していると確信しています。

Bean を古き良き方法でインスタンス化するのではなく、xml で接続したいのはなぜですか?= new myclass();

コンストラクターの引数とプロパティを介してxmlでBeanを配線し、春にデータソースを構成して、xmlファイルで接続の詳細を隠すことができることを理解しています。しかし、なぜ?特に優れたソフトウェア設計に関しては、これにはさらに多くのことがあります。誰かが大したことを説明できますか?

4

3 に答える 3

6

Spring の重要な点は、XML ベースの構成ではなく、依存性注入に関するものです。他の人が指摘しているように、Spring は XML ベースの構成から離れつつあります。しかし、DI は Spring の中核です。

問題は、DI がコンポーネントを相互にリンクするための異なるモデルを提供していることです。コンポーネントが互いに直接作成する (したがって密結合する) 代わりに、コンポーネントはそれを停止し、中央の場所からリンケージを注入します。これは、特にテストとトランザクション管理に役立つことがわかりました。

于 2013-10-14T21:51:11.500 に答える
5

物事を困難な方法で行わなければならないまで、Spring を本当に感謝することはありません。一貫したフレームワークなしで複数の大規模プロジェクトを維持するのは困難です。4 つの大規模なエンタープライズ規模のアプリケーションがあり、それらすべてが独自の方法で開始し、リソースを管理している場合、頭痛の種になります。各アプリケーションがSpringを使用していることがわかっている場合は、アプリケーションコンテキストxmlを探してください! これにより、コードベースを台無しにすることなく、さまざまな環境やテストケース用の新しいコンテキストを非常に簡単にセットアップできます.

于 2013-10-14T20:13:19.897 に答える