
ライブラリとプラグインとフレームワーク。どれもプログラミングの拡張機能的な感じですが、どのように違うのでしょうか?
具体例とかもあるとありがたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。


退会済みユーザー
2019/03/11 13:03

回答3件
0
どれもはっきりとした定義はなく、なんとなくの意味合いで使われることが多いと思います。例えば React はライブラリと言われたりフレームワークと言われたりしますので、両者に明確な境界はないと思います。
ライブラリは広い意味では外から使用できる js 全体を指し、狭い意味では特定の機能を持つ関数やクラス、プロトタイプの集まりだと思います。
例: lodash (utility), axios (ajax), Rxjs (observer), jQuery (DOM操作などいろいろ便利セット), anime.js (animation)
ライブラリは、自分のコードからライブラリを「使う」だけで、主導権は自身にありますが、フレームワークは制御の反転と言われるように、ソフトウェアの骨組みを提供してくれるものです。フレームワークがアプリケーション全体の主導権を握り、自分の書くコードはフレームワークから適宜呼び出されるという形です。
例: React/Angular/Vue (front-end app), Bootstrap (UI/CSS), Express (web server)
プラグインはすでにあるソフトウェアに補助的に機能を付け加えるようなライブラリです。jQuery にはプラグインがたくさん作られています。
例: jQuery DataTables, jQuery Validation Plugin, UglifyJS Webpack Plugin
投稿2017/12/30 11:15
総合スコア2555
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ライブラリ = ある機能に特化した関数の集合。目的は、機能・知識の再利用。
プラグイン = ある機能に対して拡張機能を提供するもの。目的は、機能の拡張。
フレームワーク = ある機能に対する設計の枠組みを提供するもの。関して、ある機能に対するライブラリの集合が内包される。目的は、集団開発における設計の標準化・生産性向上。
一般的には、Webフレームワークなど、比較的適用範囲が大きいものがフレームと呼ばれますね。
家に例えるなら、家を建てるとき、柱は最低何m以内に何本建てましょう。
そうしないと崩れるので、ここは共通の意識を持ちましょう。
といったものです。
ライブラリやプラグインは、建築するのに使う道具と言ったところでしょうか。
インパクトドライバーは、先端のビット(+や-)を付け替えることで、用途に応じた目的が達成できます。
これは回る(ライブラリ)という仕組みを利用して、ビット(プラグイン)により拡張機能を実現していると言えましょう。
投稿2018/01/08 20:53
総合スコア110
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。