「スタティックリンクライブラリ」と「ダイナミックリンクライブラリ」の違い
予備知識
まずは前提となる知識を2つ説明します。
1つ目です。
プログラムを作って動かすまでの流れは
1.プログラムを作る
2.プログラムを動かす
です。
「そんなの当たり前じゃん」と思うかもしれませんが、意識しておいてください。

2つ目です。
プログラムの種類にもよりますが
プログラムの本体となるファイルに、部品ファイルが合体して1つのプログラムになる
プログラムが多いでしょう。
このときに合体する部品ファイルは「ライブラリ」と呼ばれたりします。

以上が予備知識です。
それぞれの用語の意味
| 用語 | 意味 |
|---|---|
| スタティックリンクライブラリ | プログラムを作るときに合体させる、プログラムの部品ファイル |
| ダイナミックリンクライブラリ | プログラムを動かすときに合体させる、プログラムの部品ファイル |
似ているところ
どちらもプログラムの部品ファイルです。
違うところ
部品ファイルを本体ファイルに合体させるタイミングが違います。
プログラムの部品ファイルを本体ファイルに合体させるタイミングは、2つあります。
1.プログラムを作るとき
2.プログラムを動かすとき
の2つです。
この2つのタイミングのうち
1.プログラムを作るとき
に合体させる部品ファイルがスタティックリンクライブラリです。

もう一方の
2.プログラムを動かすとき
に合体させる部品ファイルがダイナミックリンクライブラリです。

備考
ダイナミックリンクライブラリは「DLL」と表現されるのが一般的です。
スタティックリンクライブラリとかダイナミックリンクライブラリがピンと来ない人は
スタティックリンクライブラリ:一体化型の部品ファイル
ダイナミックリンクライブラリ:装備型の部品ファイル
と解釈してください。
スタティックリンクライブラリは体に埋め込んだ武器のイメージです。

埋め込んだ武器は身体と一体化しています。
24時間365日くっついています。
新しいものに取り換えたり改造するのは大変です。
身体の中に埋め込んでありますからね。
その代わり、うっかり置き忘れたりして失くすことは ありません。
ダイナミックリンクライブラリは剣とか盾のイメージです。

剣や盾は、それ自体が独立しています。
普段は飾っておいて、冒険に出るときに身に着けるでしょう。
新しいものに取り換えたり改造するのが簡単です。
その代わり、いざ冒険に出ようと思ったときに、どこにしまったか忘れていて見つからないかもしれません。






