SDK(エスディーケー)とは、特定のプラットフォームやサービス向けのソフトウェアを開発するために必要な道具を、ひとまとめにしたものです。英語の「Software Development Kit」の頭文字をとった言葉で、日本語ではソフトウェア開発キットと訳されます。
イメージとしては、SDKはすぐに始められる工作キットです。材料も工具も説明書もすべて箱に入っているため、必要なものを一つひとつ買いそろえる手間がありません。開けてすぐに作り始められる——この手軽さがSDKの価値です。
たとえばスマートフォンのアプリを作りたいとき、必要な部品や動作確認の道具を自分で集めるのは大変です。提供元が用意したSDKを導入すれば、開発に必要な環境が一度に整います。
SDKに含まれるもの
SDKの中身は提供元によって異なりますが、多くの場合、次のようなものがセットになっています。
| 内容 | 役割 | たとえ |
|---|---|---|
| ライブラリ | よく使う機能の部品集 | 材料 |
| 開発ツール | 作成や動作確認を助ける | 工具 |
| ドキュメント | 使い方の説明 | 説明書 |
| サンプル | 実際に動く見本のコード | 完成見本 |
APIとの違い
SDKとよく並べて語られるのがAPIです。APIは機能を利用するための「窓口」そのものを指すのに対し、SDKはその窓口を使いやすくする道具まで含めたより大きなまとまりです。SDKの中にAPIを扱う部品が含まれている、という関係になります。
料理にたとえるなら、APIが「注文を受け付けるカウンター」、SDKが「そのカウンターの使い方や必要な道具がすべて入ったスターターセット」といったところでしょう。APIだけでも開発はできますが、SDKを使えばより手早く形にできます。
身近なSDKの例
SDKは、開発の現場で日常的に使われています。スマートフォンアプリを作るための「Android SDK」や「iOS SDK」、決済サービスや地図サービスが提供するSDKなどが代表的です。多くの企業が自社サービス向けのSDKを公開しており、開発者はそれを取り込むことで短期間で機能を組み込めるようになっています。
SDKは、使うプログラミング言語ごとに用意されているのが一般的です。同じサービスでも、Python向け・JavaScript向け・Java向けといった具合に複数のSDKが提供されており、開発者は自分が使う言語に合ったものを選びます。
SDKを使うときの注意点
便利なSDKですが、導入すればその提供元に依存することにもなります。SDKの仕様が変われば、自分のプログラムも合わせて直す必要が生じます。また、公開が終了してしまうリスクもゼロではありません。信頼できる提供元のものを選び、更新情報を追っておくことが大切です。
あわせて知っておきたい用語
- API:
機能を利用するための窓口 - ライブラリ(Library):
よく使う機能をまとめた部品集 - フレームワーク(Framework):
開発の土台となる仕組み

コメント