ディーエルエル/DLL

DLL(ディーエルエル)とは、複数のアプリケーションで、共有されるプログラムの一部だけを切り離して、ファイルにしたもの。

DLLは「Dynamic Link Library」の略称で、ダイナミックリンクライブラリと言う。動的リンクを用いたライブラリである。Windowsを使っている時によく出てくる「DLLファイルが見つかりません」というアラートボックスで知られている。ウィンドウズのダイナミックリンクライブラリの拡張子も「DLL」である。

ライブラリはプログラムでよく使われる関数やデータなどをまとめたファイルを指す。DLLは、動的リンクを用いたライブラリの一種と言うことができる。

DLLは、それだけでは特に役立つものではない。別のソフトウェアなどから引っ張り出されてはじめて役立つのである。また、ある程度の機能を持つDLLを作っておくと、あとあと再利用することも可能だ。この場合、既に出来上がっているため、規模によっては開発工程がかなり省かれることになる。

また、良く利用されるプログラムをDLLにまとめると記録領域や作られるファイル数などが抑制され、リソースを効率的に用いることができる。反対に利用頻度の低いデータをDLLとして統合すると、メモリなどの使用率を下げ、こちらもリソースを確保することができる。リソースとは資源のことだ。資源が大きいほど、コンピュータは余力を持つことになる。

ソフトウェアの多くは、様々なプログラムを読み込んで動いている。そして多くのソフトウェアは、共有されたプログラムで動いていることになる。そもそもウィンドウズやLinuxUNIXなどのOSはあらゆるアプリケーションにとって共有物である。

こんな良いこと尽くめのDLLだが、欠点もある。それは、アプリケーションを削除する時だ。共有の性質が強いため、他のアプリケーションで使われているDLLファイルを一緒にアンインストールしてしまうこともある。こんな時によく見られるのが、「DLLファイルが見つかりません」、というものだ。ものによってはアンインストール時に共有データを削除するかどうか、ダイアログボックスで尋ねてくるタイプもある。

他にも都合の悪い点があると言えばある。それは、新たにソフトウェアを追加してみると、この子が勝手にDLLをごにょごにょやってしまうケースがあるため。他のソフト達にとっては、この子の行為が迷惑な場合もあるのである。

尚、DLLはダイナミックリンクライブラリであり、動くときに各機能が組み合わさって利用される。これに対して、スタティックリンクライブラリは、作成時に結合されるという点が異なる。

DLLの意味を簡潔に説明すると

アプリみんなで使える共有プログラムのこと。