シグネチャとは?
しぐねちゃ
シグネチャとは、プログラムの関数やメソッドの名前・引数・戻り値の型など、外部からの呼び出し方を定義した情報のことです。
シグネチャ(Signature)とは、プログラミングにおいて関数・メソッド・手続きの「呼び出し契約」を記述した情報のことです。一般に、関数名・引数の数と型・戻り値の型を組み合わせたものがシグネチャとして扱われます。
シグネチャは複数の文脈で使われます。
- 関数シグネチャ(型シグネチャ):コードの文脈で、関数の入出力の型仕様を定義したもの。静的型付け言語(Java・TypeScript・Rustなど)では特に明示的に記述される
- メソッドシグネチャ:オブジェクト指向言語でメソッドのオーバーロードや実装の識別に使われる情報
- デジタル署名(Digital Signature):暗号技術においてデータの正当性・完全性を証明するための署名データ
- ウイルスシグネチャ:セキュリティ分野でマルウェアを識別するためのバイトパターン定義
プログラミング言語の文脈では、シグネチャはインターフェースや抽象クラスの設計において特に重要です。同じ名前のメソッドでも引数の型や数が異なれば別のシグネチャとなり(オーバーロード)、コンパイラはシグネチャをもとに適切なメソッドを選択します。ドキュメントやAPI仕様書では、シグネチャを見ることでその関数の使い方を把握できます。
セキュリティの領域では、デジタル署名(RSA・ECDSAなど)が文書や通信データの改ざん検知と本人認証に使われており、HTTPS通信やコード署名に不可欠な技術です。またアンチウイルスソフトはウイルスシグネチャのデータベースとファイルを照合してマルウェアを検出します。
使い方・例文
Javaで public int add(int a, int b) と宣言した場合、「addという名前でint型を2つ受け取りint型を返す」という部分がこのメソッドのシグネチャであり、オーバーロードの判別やAPIドキュメントの記述に活用されます。
この用語をシェア
最終更新: