みなさんAPIを作成したことはありますか?またはAPIを使用したことはありますか?日本ではAPIを使用する...APIに送る...とはいませんね?APIを「叩く」という表現をします.「APIを叩く」という表現は,一見すると乱暴で直接的な言葉遣いに思われそうですが,この言葉の背景には,プログラミングの歴史と人間のコミュニケーションの面白い進化が隠されてい偏微分可能ではないでしょうか?本記事では,「APIを叩く」という表現の由来,歴史的背景,そしてその意味合いを深く掘り下げていきます!
今回は少し短めです
「叩く」という動詞の技術的解釈
「叩く」という言葉は,本来,物を物理的に打つことを意味する.しかし,プログラミングの世界では,この言葉が比喩的に使われるようになった.これは,クリエイティブな言葉の使い方の素晴らしい例だと思う.
通信のアナロジー
初期のコンピュータ通信において,通信プロトコルは物理的な通信システムととても似かよっていた.電信や電話の世界では,メッセージを「送る」「叩く」「伝える」という表現が頻繁に使用されていた.この通信のアナロジーが,後にデジタル通信の世界にも持ち込まれたのである.
APIの歴史的文脈
1960年代:最初のAPI概念の誕生
1960年代,メインフレームコンピューティングの時代に,APIの概念が生まれた.当時のプログラマーたちは,異なるソフトウェアシステム間のコミュニケーション方法を模索していた.
1970年代:リモートプロシージャコール(RPC)の登場
1970年代には,リモートプロシージャコール(RPC)の概念が登場し,異なるコンピュータ間でプログラムを実行できるようになった.この技術は,「送る」「叩く」「伝える」といったアクティブな動詞のイメージに近く,遠隔地のシステムと対話する方法を提供した.
1990年代:WebAPIの爆発的普及
1990年代,インターネットの普及に伴い,WebAPIが急速に発展した.ウェブサービスが増加し,APIを通じてデータをやり取りすることが一般的になっていった.
APIを叩くという表現の起源(推論)
では,「APIを叩く」という表現はいつから使われ始めたのだろうか?正確な起源や誰が最初に使い始めたのかは明確ではない.しかし,2000年代初頭から中頃にかけて,日本のエンジニアコミュニティで徐々に広まっていったと考えられる.
1. 迅速で直接的なインタラクション
まるで扉をノックするというインタラクションを表すように,素早く明確なやり取りを意味しているのではないか?
2. コマンドライン操作の比喩
多くのエンジニアがターミナルでコマンドを入力してシステムとやり取りをしていた.その際にキーを「叩く」ことでコマンドを実行するイメージが,「APIを叩く」という表現に繋がったのではないか?
3. 英語表現の翻訳
英語圏では"hit an API"という表現が使われており,これを直訳して「APIを叩く」と言うようになった可能性がある.この"hit"には「アクセスする」や「問い合わせる」という意味合いが含まれているのではないか?
4. 開発現場での俗語としての浸透
エンジニア同士の会話やチャットで,手軽に状況を伝えるための俗語として「叩く」が使われ始め,それが次第に一般化していったと考えられのではないか?
具体的なエピソードと広まり
具体的に誰が最初に「APIを叩く」と言い始めたのかは定かではないが,ブログや技術書,勉強会などでこの表現が使われるようになり,エンジニアの間で広まっていった.特に,ウェブ開発が急速に進む中で,多くのエンジニアがAPIに対するリクエストを頻繁に行うようになり,その行為を手短に表現する言葉として定着していった
実際のAPIの使用例
サーバーとのコミュニケーション
GET example.com/hello
上記のようなリクエストは,まさに「APIを叩く」行為の典型的な例である.サーバーに対して特定のデータを要求するという,直接的で能動的な行動を表現している.
シンプルなAPIの作成方法
では,簡単なAPIの実装を見てみよう.
Python(Flask)での例だ.
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/hello', methods=['GET'])
def hello():
return jsonify(message='Hello World!')
if __name__ == '__main__':
app.run(debug=True)
このコードでは/helloというエンドポイントを作っている.このエンドポイントにGETリクエストを送る,つまり「APIを叩く」と,「Hello World!」というメッセージがJSON形式で返ってくる.
「APIを叩く」という表現は,ただの技術用語ではない.人間とテクノロジーの創造的な相互作用や,言語の柔軟性,そしてプログラマーたちの独自のコミュニケーション方法を象徴していると思う.この表現は,冷たく見える技術の世界に,人間らしい温かさと遊び心をもたらす,素晴らしい言葉の工夫だと思う.
皆さんも,ぜひAPIを「叩いて」みて,テクノロジーとのインタラクションを楽しんでほしいです!