インタフェースとは?いんたふぇーす
インタフェースとは、モジュールやクラスが外部へ公開する「何ができるか」だけを定めた接点の仕様であり、「どうやるか」は実装側に委ねる。呼び出す側が具体的な実装ではなく仕様にだけ依存するため、実装を差し替えても呼び出し側を書き換えずに済む。広義には、モジュール間で受け渡す引数・戻り値の取り決めや、システム間で交換するファイル形式・APIの取決めも指す。
最終更新:2026-10-06
この語が出る過去問を解く →背景
呼び出す側が具体的な実装クラスを直接名指ししていると、実装を一つ替えるたびに呼び出し側もすべて直すことになり、変更の影響が読めなくなる。この巻き添えを断つために、間に「満たすべき約束」だけを置き、両側がその約束にのみ依存する形にしたのがインタフェースである。応用情報では、疎結合・単体テストでのスタブ差し替え・複数チームでの並行開発といった設計判断の理由づけとして問われる。
具体例
JavaでCollectionインタフェースを引数に取るメソッドは、ArrayListでもHashSetでも同じコードで扱える。JDBCも同じ考え方で、java.sql.Connectionというインタフェースだけを使って書いておけば、接続先をOracle DatabaseからPostgreSQLへ替えてもドライバの入替えで済み、業務ロジックには手を入れずに済む。
試験での引っ掛け
画面のユーザインタフェース(UI)と、プログラム間の接点としてのインタフェースが同じ語で出題される。設問の分野(ヒューマンインタフェースか設計技法か)で読み分けること。また原則として実装を持たないため、「共通処理をインタフェースに書いてまとめる」は誤り——それは抽象クラスや委譲が担う役割である。
関連用語
出た過去問
出典:平成30年度 秋期 応用情報技術者試験 午前 問54(IPA)解説で登場
ソフトウェアの機能量に着目して開発規模を見積もるファンクションポイント法で,調整前FPを求めるために必要となる情報はどれか。
正解:画面数
要点:FP法は外部入出力など利用者から見える機能の数と複雑さで測る。
ファンクションポイント法は、利用者から見た機能の数と複雑さから開発規模を測る手法である。外部入力・外部出力・外部照会・内部論理ファイル・外部インタフェースファイルといった機能を数え、複雑さに応じた重み付けをして調整前FPを算出する。画面のような外部入出力の数が数え上げの対象となる。
出典:平成28年度 秋期 応用情報技術者試験 午前 問61(IPA)解説で登場
SOAの説明はどれか。
正解:利用者の視点から各業務システムの機能を幾つかの独立した部品に分けることによって、業務プロセスとの対応付けや他のソフトウェアとの連携を容易にする手法
要点:SOAは機能をサービス単位に分け組合せで構成する
SOA(Service Oriented Architecture)は、業務システムの機能を利用者から見て意味のある単位の「サービス」として独立させ、それらを組み合わせてシステムを構成する考え方です。サービスは標準的なインタフェースで公開されるため、業務プロセスの変更に合わせて組み替えたり、他システムと連携させたりしやすくなります。ERPやフィット&ギャップ分析とは目的も対象も異なります。
出典:令和5年度 秋期 応用情報技術者試験 午前 問63(IPA)解説で登場
SOAを説明したものはどれか。
正解:ビジネスプロセスの構成要素とそれを支援するIT基盤を、ソフトウェア部品であるサービスとして提供するシステムアーキテクチャのこと
要点:SOAは業務機能をサービス部品として組み合わせる設計
SOA(サービス指向アーキテクチャ)は、業務上の機能を独立した「サービス」という部品として実装し、それらを組み合わせてシステムを構築する設計思想である。サービスは標準的なインタフェースで呼び出せるため再利用しやすく、業務プロセスの変更にも組替えで対応しやすい。
出典:令和6年度 秋期 応用情報技術者試験 午前 問78(IPA)解説で登場
著作権法で保護されるものはどれか。
正解:コンパイラのプログラム
要点:著作権法はプログラムを守るが言語・規約・解法は対象外
著作権法はプログラムを著作物として保護するが、同法はプログラム言語、規約(プロトコル・インタフェース)、解法(アルゴリズム)には保護が及ばないと明記している。したがって具体的に記述されたコンパイラのプログラムは保護対象だが、他の3つは対象外である。
出典:令和6年度 春期 応用情報技術者試験 午前 問63(IPA)解説で登場
SOAの説明はどれか。
正解:利用者の視点から業務システムの機能を幾つかの独立した部品に分けることによって、業務プロセスとの対応付けや他ソフトウェアとの連携を容易にする手法
要点:SOAは業務機能を独立したサービスに分け組み合わせて構築する
SOA(Service Oriented Architecture)は、業務システムの機能を利用者から見た意味のある単位で独立した「サービス」に分割し、それらを組み合わせてシステムを構築する考え方である。サービス単位が業務プロセスと対応付けやすく、標準的なインタフェースを介して他のソフトウェアとも連携しやすいという利点がある。よってエが正解。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。