この記事達成したいゴール
- 「インターフェースってなんですか?」と質問された時に自分なりの例え話が作れること
※ インターフェースってなんですか?から始める理由
社会人やネットの記事で「ユーザーインターフェース」「オーディオインターフェース」などの「インターフェース」という言葉が多く出てくるようになりましたが、「インターフェースってなんですか?」と言われるとしっかりと説明ができない状態😢。なので、まずはここから始めたいと思います。
インターフェースとは
個人的には、「利用者」と「提供者」をつなぐ ハブ のような存在だと思っています。具体例で説明してみます。
翻訳機(具体例1)
翻訳機は言語を変換してやり取りを可能にするツールとなります。この場合、下記のような形になります。
利用者: 自分の知らない言語をテキスト入力する・自分が知っている言語に翻訳してほしい
提供者: 様々な言語の翻訳エンジン(Google翻訳・DeepL etc...)
インターフェース:利用者と提供者の間で「言語変換するために必要な共通の仕組み」を提供する(翻訳機)
翻訳機というインターフェースを置くことで、下記のようなになる
- 利用者からしてみれば翻訳機を使って、自分が知っている言語で確認できれば良いため、翻訳機の裏でどうやって翻訳しているのかを把握する必要がない
- 提供者も入力された言語を翻訳エンジンを通してインターフェースから指定された形で返却すれば良いので、利用者がどのように利用するのかを把握する必要はない
また、この仕組みのおかげで、例えばGoogle翻訳からDeepLに翻訳エンジンを切り替えたとしても、利用者は何も気にする必要がなくなります。
コンセント(具体例2)
コンセントは電化製品と電力供給システム(配線や発電所)をつなぐ役割を持ったツールになります
利用者: 電化製品(家電)
提供者: 電力を供給するシステム(発電所・電力会社)
インターフェース:コンセント(利用者が電力を簡単かつ安全に利用できるよう、統一された形状と仕組みを提供)
コンセントというインターフェースを置くことで、下記のようになる
- 利用者からしてみればコンセントを使って、電力を使えれば良い、コンセントの裏でどうやって電気が来ているのかを把握する必要がない
- 提供者も最終的にコンセントへ電力を供給するが、利用者と直接やり取りする必要がない
さらに、コンセントが「統一された形状」を持つため、異なる家電メーカーの製品でも同じコンセントを使えるようになります。
まとめ
このようにインターフェースは、「利用者・提供者の間に関する入出力を統一(標準化)する」という役割を担います。標準化された仕組みを提供することで、利用者と提供者が互いの詳細を知らなくても、やり取りできるという利点があります。