5

重複の可能性:
フレームワークとライブラリの違いは何ですか?

Javaのドキュメントには、コレクションフレームワークと書かれています

javaコレクションがライブラリではなくフレームワークと呼ばれるのはなぜですか? 今、私はライブラリに関してフレームワークから何を期待できるかについてもっと混乱しています..

4

1 に答える 1

2

次の特徴により、フレームワークとライブラリが区別されます。

制御の反転 - フレームワークでは、ライブラリや通常のユーザー アプリケーションとは異なり、プログラム全体の制御の流れは呼び出し元ではなく、フレームワークによって決定されます。

デフォルトの動作 - フレームワークにはデフォルトの動作があります。このデフォルトの動作は、実際には何らかの有用な動作である必要があり、一連のノーオペレーションではありません。

拡張性 - フレームワークは、通常、選択的なオーバーライドによって、または特定の機能を提供するユーザー コードによって特殊化することによって、ユーザーによって拡張できます。

変更不可のフレームワーク コード - 一般に、フレームワーク コードは変更できません。ユーザーはフレームワークを拡張できますが、そのコードを変更することはできません。

基本的に、フレームワークは、動作を変更できないライブラリの一種です。たとえば、Java でクラス ArrayList または HashMap を拡張できますが、これらのクラスの動作を変更することはできません。

于 2012-10-27T05:52:22.387 に答える