LoginSignup
158
116

More than 3 years have passed since last update.

SDKとAPIについて

Last updated at Posted at 2018-01-15

SDKとAPIの違いについて

データ連携の際にSDKとAPIについて触れる機会があったのでその違いについてのメモ
厳密ではないです。ふわっとしてます。
Javaを自分がやってたのでJava視点で見ます

まずは。

APIとSDKは全然違うものです。
自分も調べていくうちにSDKとAPIの関係性とか調べ始めて何が何だか分かんなくなった。

SDK

SDKはソフトウェア開発キット(Software Development kit)でJavaのみんなが使えるクラスみたいなもの。(APIとか言われてるけど今回は混乱するのでクラスで行きます。厳密ではないです。すいません)
↓こんなやつよね
Date__Java_Platform_SE_7__.png
https://docs.oracle.com/javase/jp/7/api/

API

APIはApplication Programing Interfaceの略でつまりは通信(HTTPとか)のルール
「特定のURL送ると特定のデータ返しますぜ」ってやつ。
例)HTTP1.0では
GET ファイル名 HTTP/1.0(改行)(改行)
という形でWebサーバーに送ればWebページの情報が取れますよと。

なんでAPIとSDKが混乱するのか

サービスによってはAPIやSDKを公開しているところがある。
もう一度言っておくとSDKはあくまでクラスでAPIはルール

だからそのサービスの情報を取りたかったらAPI(ルール・URL)で取ればいい。
でも、そのAPIを書くのって大変。
そこで企業側でAPIを簡単にしてくれるクラスを作ったよ=SDK

だからSDKはJava自体にも備わっているクラス(JavaでいうAPI。上のAPIとは違うよ)と同じで会社独自で作ったやつ。それを使うとクラスのメソッドの中に定義されているAPI(URL)が動きますよ。

SDKを使ってAPIを送ってますよ。SDKもAPIもやってることは同じですよ。SDKなら簡単にできますよ
やってることが同じだから混乱するのか。

158
116
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
158
116