もう少し詳しく
プログラムから機能を呼び出すライブラリに加え、説明書、サンプルコード、テスト用ツール、デバッガーなどが含まれます。サービス提供者がSDKを用意すると、開発者はAPIへの通信や認証処理を一から組み立てず、使っているプログラミング言語に合う形で実装できます。
SDKは、APIへ接続する定型処理を開発者が再利用し、特定サービス向けの実装を早めるために提供されます。ライブラリの便利さだけで決めず、対応言語、依存関係、更新頻度、認証情報の扱い、API仕様との対応を確認して採用します。
HISTORY
開発された年代と歴史
この用語を大きな流れで見ると、1980年代〜現在に発展してきました。
- 1980年代〜OSや機器向けの開発ツール、ライブラリ、資料をまとめたキットが普及。
- 2000年代モバイルやWebサービスのプラットフォームごとにSDKが提供されるようになった。
- 現在APIクライアント、認証、サンプル、テスト支援を言語別にまとめ、クラウドやAIの開発を支える。
キーマン・関わった研究者
単一の発明者は定まっていない。OS、開発環境、クラウドサービスの提供者が整備してきた。
技術の変遷
個別の開発ツール → プラットフォーム別キット → API・クラウド・AI向け言語別SDK
理解のポイント
- ライブラリや資料、サンプルなどをまとめ、特定の環境向けの開発を進めやすくします。
- APIの通信仕様を直接扱う場合に比べ、利用言語に合う関数などを通じて機能を呼び出せます。
- 導入するSDKの対応言語とバージョンを確認し、使いたいサービスの機能に対応するかを確かめます。
たとえば、こんな場面で
クラウドサービスのPython SDKを導入し、数行のコードでファイルの一覧取得やアップロードを行います。
覚えておきたいこと
APIは接続方法のルール、SDKはそのAPIなどを扱いやすくする道具一式です。SDKの対応言語、バージョン、更新状況を確認して選びます。