重複の可能性:
フレームワークとライブラリの違いは何ですか?
Javaのドキュメントには、コレクションフレームワークと書かれています
javaコレクションがライブラリではなくフレームワークと呼ばれるのはなぜですか? 今、私はライブラリに関してフレームワークから何を期待できるかについてもっと混乱しています..
重複の可能性:
フレームワークとライブラリの違いは何ですか?
Javaのドキュメントには、コレクションフレームワークと書かれています
javaコレクションがライブラリではなくフレームワークと呼ばれるのはなぜですか? 今、私はライブラリに関してフレームワークから何を期待できるかについてもっと混乱しています..
次の特徴により、フレームワークとライブラリが区別されます。
制御の反転 - フレームワークでは、ライブラリや通常のユーザー アプリケーションとは異なり、プログラム全体の制御の流れは呼び出し元ではなく、フレームワークによって決定されます。
デフォルトの動作 - フレームワークにはデフォルトの動作があります。このデフォルトの動作は、実際には何らかの有用な動作である必要があり、一連のノーオペレーションではありません。
拡張性 - フレームワークは、通常、選択的なオーバーライドによって、または特定の機能を提供するユーザー コードによって特殊化することによって、ユーザーによって拡張できます。
変更不可のフレームワーク コード - 一般に、フレームワーク コードは変更できません。ユーザーはフレームワークを拡張できますが、そのコードを変更することはできません。
基本的に、フレームワークは、動作を変更できないライブラリの一種です。たとえば、Java でクラス ArrayList または HashMap を拡張できますが、これらのクラスの動作を変更することはできません。