SDK 【Software Development Kit】 ソフトウェア開発キット
概要
SDK(Software Development Kit)とは、あるシステムに対応したソフトウェアを開発するために必要なプログラムや文書などをひとまとめにしたパッケージのこと。システムの開発元や販売元が希望する開発者に配布あるいは販売する。インターネットを通じて公開されているものもある。製品により何が含まれるかは異なるが、コンパイラやデバッガなどの開発ツール類、クラスファイルやライブラリ、モジュール、ドライバなどの既製のプログラム、APIや通信プロトコルなどの仕様などを記述した文書ファイル(ドキュメント)、サンプルコードを記述したプログラムファイルなどが含まれていることが多い。電子基板や組み込みシステムなどの場合は接続ケーブルや何らかの装置・部品などハードウェアが添付されることもある。
単体で開発作業を完結できるよう必要なツールなどがすべて含まれている場合と、特定のIDE(統合開発環境)などで開発することを前提に、IDEへのアドオンやプラグインなどの形で開発キットを提供する場合がある。
その場合は必要な環境を開発者側で別途整えてからキットを導入しなければならず、特定の環境に縛られる不自由さもあるが、IDEに持つ支援機能を利用することで快適・迅速に開発を進められる利点もある。
開発者はSDKを入手することで開発に必要な環境を速やかに構築することができ、サンプルプログラムやチュートリアル、ガイダンス、ドキュメントなどを通じて効率的に学習や実践を進めることができる。提供元にとっても、開発者が自社の製品やサービスを活用しやすい環境を整えることで支持を取り付け、対応製品やサービスが広がることを期待できる。
SDKの多くは「Android SDK」「iOS SDK」のように「製品名 SDK」という名称になっているが、Java言語によるソフトウェア開発を行うための「JDK」(Java Development Kit)や、Windows向けデバイスドライバを開発するための「DDK」(Driver Development Kit)のように、 “Software” の部分を個別の製品名や技術名、開発対象のソフトウェアの種類などで置き換えて「~DK」という名称を採用している場合もある。