API
Application Programming Interface
えーぴーあい
他の資格での定義
ソフトウェアの機能を外部のプログラムから利用するための仕様やインタフェース。異なるソフトウェア間でデータや機能を連携させるための取り決めであり、再利用性を高める。
ソフトウェアやサービスが外部のプログラムに対して機能を提供するためのインタフェース仕様。関数やメソッドの呼び出し規約を定義し、異なるソフトウェア間の連携を可能にする。
ソフトウェアやサービス間でデータや機能をやり取りするための取り決め(インタフェース)。Web APIとして外部に公開することで、他社サービスとの連携が可能になる。APIエコノミーの基盤技術。
ソフトウェア同士がデータや機能をやり取りするための規約(インタフェース)。Web APIではRESTやGraphQLが主流。API設計では、バージョニング、エラーハンドリング、認証、レート制限などを考慮する。
関連キーワードの用語
関数が自分自身を呼び出すプログラミング技法。基底条件(終了条件)と再帰ステップで構成される。木構造の巡回、フィボナッチ数列、ハノイの塔などの問題に適する。スタックオーバーフローに注意が必要で、末尾再帰最適化やメモ化で改善できる。
プログラムの記述スタイルや命名規則、コメントの書き方、インデンテーション、ネストの深さ制限、使用禁止命令などを統一するための規約。可読性・保守性の向上とバグ混入の防止を目的とし、チーム開発での一貫性を確保する。
プログラムを独立した機能単位(モジュール)に分割する設計手法。モジュール間の結合度を低く、モジュール内の凝集度を高くすることが良い設計とされる。保守性、再利用性、テスト容易性が向上する。
オブジェクト指向プログラミングにおいて、スーパークラスで定義されたメソッドをサブクラスで再定義すること。ポリモーフィズム(多態性)の実現手段であり、同じメソッド名でクラスごとに異なる振る舞いを実装できる。
同一名のメソッドや関数を引数の型や数を変えて複数定義すること。コンパイル時に引数に応じて適切なメソッドが選択される(静的多態性)。コンストラクタのオーバーロードにより、異なる初期化方法を提供できる。
データとそれに対する操作をまとめて定義し、実装の詳細を隠蔽したデータ型。スタック、キュー、リストなどが代表例。利用者はインタフェースのみを通じてデータにアクセスし、実装に依存しないプログラミングが可能になる。