機能拡張
きのうかくちょう
アドオン(アドインとも)は機能を追加するための小さなプログラム。プラグインと混同されやすいが、それはプラグイン(本記事の項目)を参照。よく知られた例はブラウザにおける機能拡張であろう。Mozilla製品においてのアドオンは、拡張機能とテーマ、プラグインの総称である。アドオンの多くはバイナリ形式ではなくスクリプト言語で記述される。
ブラウザにおける機能拡張
機能拡張で有名なのはFirefoxであろう。
拡張機能は主にJavascriptのようなWeb技術を応用した拡張であるのに対し、プラグインはAdobeFlashといった外部の外部ライブラリに依存したものとなる。また、アドオンよりも軽量なものにユーザースクリプトがあるが、こちらは処理系のアドオンを追加しなければ使用することができない。
2013年現在、Firefox以外にもSafariにおける「機能拡張」やGoogleChromeの「拡張機能」、Operaの「アドオン」など、多くのブラウザが機能拡張に対応している。また、Google Chromeはユーザースクリプトにも標準で対応している。
InternetExplorerもこれらとは提供される機能が多少異なるもののアドオンへの対応があり、シェル拡張のように外部のソフトウェアをインストールする形で「アドオン」で提供されない部分への機能拡張が行えるようになっている。
通常、コンピュータ上で動作するプログラムは、中心となるプログラムコードがサブルーチンを呼び出して処理を進める形で構成される。処理の基本の流れは同じでも、処理内容の詳細が異なるアプリケーションコードを作る場合には、いくつかのサブルーチンを入れ替える事により実現する。
多くのソフトウェアでは、この差し替え可能な部分のサブルーチンの呼出し手順は公開されておらず、アプリケーション・コードを開発した者だけが差し替え作業ができるようになっている。しかし、必要とされる全てのサブルーチンを大元の開発者が用意できるとは限らない場合がしばしば発生する。このような場合、サブルーチンの呼び出し手順を規格化して公表し、さらにサブルーチンの差し替え方法を提供すれば、大元の開発者以外の者もアプリケーションの機能を変更できるようになる。
このように誰でも差し替え可能になっているアプリケーションコードの一部分を、プラグインと呼ぶ。
本体となるソフトウェアから呼び出して特定の処理を行わせるものであり、それ単体では動作できない。
既存のものの機能や性能などに対し、新しい機能や性能などを追加(機能拡張)する際に必要になる物をひとまとめにしたもの(パック)を指す。
既に市場に出回った製品などに対し、製品のメーカーが後から機能の追加や性能の向上を施す場合に、それに必要な部品を一まとめにした拡張パックを用意する。製品のユーザーがこの拡張パックを使用することで、製品の機能や性能を追加し拡張することができる。後からの機能の追加や拡張が行われるコンピュータのソフトウェア分野や一部のゲーム(コンピュータゲーム、トレーディングカードゲームなど)でよく使われるものである。