ここ最近jQueryの勉強をしていて、ライブラリとフレームワークの違いがよくわからなかったので違いをまとめてみました。ちなみにjQueryはjavascriptという言語のライブラリです。
グーグルに聞いてみました。ライブラリはそのプログラミング言語のよく使う機能を使いやすくまとめたものらしいです。フレームワークはアプリケーションを作る上での雛形のようなものとのこと。
ライブラリは基本的には自分でプログラミングの論理を記述して、自由に自分のコードに書き込むようなもの。
一方で、フレームワークは自分のアプリで特有の処理だけして、他のよくある機能についてはフレームワーク側で補完してくれるというようなもの。
イメージするなら、ライブラリはスクラップブックのようなものです。使いたいもの(処理・機能)だけを切り貼りして完成させるといった感じ。フレームワークは、質問に答えていくと性格を占ってくれる診断ゲームのようなもので、必要な箇所だけ自分でコードを記述して埋めていくような感じ。
AngularJSとNode.js、Backbone.jsにjQuery。
javascriptだとこのようなサービスがありますが、これらは
Angular JS >>> フレームワーク
Node.js >>> プラットフォーム(どっちでもないらしい笑)
Backbone.js >>> ライブラリ
jQuery >>> ライブラリ
こんな感じに分類できるんでしょうかね。