インタフェースの解説(基本情報技術者シラバス用語)

目次

インタフェースとは

インタフェース(Interface)とは、異なる2つの性質のものを「つなぐ境界線」や「接続部分」を指す言葉です。ITの世界では、主に3つの接続において使われます。1つ目は、パソコンとマウスやモニターなどの周辺機器を接続するための「ハードウェアインタフェース(USBやHDMIなど)」。2つ目は、異なるソフトウェアやシステム同士がデータをやり取りするための「ソフトウェアインタフェース(APIなど)」。3つ目は、人間とコンピュータがやり取りを行うための「ユーザインタフェース(画面やボタン、操作方法など)」です。これらが共通のルールに基づいて設計されていることで、異なる機器やシステムが正しく連携できます。

具体例

身近な例として、スマートフォンの充電口が挙げられます。スマートフォンの内部回路と、充電ケーブルという異なる性質のものを接続するために「USB Type-C」という共通のインタフェース(規格)が決められています。この規格のおかげで、どのメーカーの充電器でも同じ端子であれば接続して充電することができます。プログラムの例としては、以下のように異なるクラス同士が共通のルールで通信するための仕組みとしてインタフェースが使われます。

// 接続ルール(インタフェース)の定義
interface USBConnection {
    void connect();
}

もう少し詳しく

インタフェース(Interface)は、直訳すると「界面」や「接点」を意味し、IT用語としては「何かと何かを繋ぐためのルールや規格、接続部分」という非常に広い意味を持つ重要な概念です。システムや機器が複雑になればなるほど、全体を一つの巨大な塊として作るのではなく、部品ごとに分けて開発し、それらをインタフェースで繋ぐという設計手法(モジュール化)が不可欠になります。

例えば、ハードウェアインタフェースの代表である「USB」は、パソコン本体と周辺機器(マウス、キーボード、プリンタなど)を繋ぐための物理的な形状や電気信号のやり取りのルールを定めたものです。この統一されたインタフェースが存在するおかげで、世界中のメーカーがそれぞれ独自の周辺機器を開発しても、USB端子さえ備えていればどのパソコンにも接続して使うことができます。

ソフトウェアの世界でもインタフェースは極めて重要です。例えば「API(Application Programming Interface)」は、あるソフトウェアが持っている機能を、別のソフトウェアから呼び出して利用するためのルールです。TwitterのAPIを使えば、自作のアプリに最新のツイートを表示させることができ、GoogleマップのAPIを使えば、自社のWebサイトに地図を埋め込むことができます。さらに、「ユーザインタフェース(UI)」は人間とコンピュータを繋ぐ接点であり、画面のデザインやボタンの配置、タッチ操作のレスポンスなど、ユーザーがシステムをいかに快適に操作できるかを左右する重要な要素です。このように、インタフェースはITシステムのあらゆる階層に存在し、システム同士や人と機械を円滑に連携させる役割を担っています。

試験でのポイント

基本情報技術者試験では、インタフェースという言葉がどの文脈で使われているかを読み取ることがポイントになります。ハードウェアインタフェースに関する問題では、USB、HDMI、Bluetoothといった具体的な接続規格の名前と、その特徴(有線か無線か、転送速度、接続可能な機器の種類など)が問われます。

ソフトウェアやシステム開発の文脈では、モジュール間のインタフェース設計が重要であることや、APIを用いたシステム連携のメリットなどが出題されます。また、ユーザインタフェース(UI)の分野では、GUI(グラフィカル・ユーザ・インタフェース:マウスやアイコンを使って直感的に操作する方式)や、CUI(キャラクタ・ユーザ・インタフェース:文字のコマンドを入力して操作する方式)の違い、そしてユーザーにとっての使いやすさを示す「ユーザビリティ」や「アクセシビリティ」といった関連キーワードが頻出です。それぞれのインタフェースが「何と何を繋いでいるのか」を意識して学習を進めましょう。

関連する用語

インタフェースに関連する用語として、人間とコンピュータの操作のやり取りを指す「UI(ユーザインタフェース)」、ソフトウェア同士を繋ぐための規格である「API」、そして周辺機器を接続するための代表的な規格である「USB」などが挙げられます。これらはそれぞれ異なる階層での接点を意味しています。

読んだ内容を10問練習と実技で確認

記事で理解した用語を、StudyQuestの演習とクラウド実技ラボで定着させます。

10問練習 実技ラボ