コンピュータ言語では、プログラマーが利用できる組み込み情報、エンコーディング、またはツールは、多くの場合、エンティティ、変数、オブジェクト、関数、または命令の形式で事前に宣言されています。ほとんどの場合、それらを上書きしたり、操作したりすることはできません。
事前宣言されたエンティティ
事前宣言エンティティは、文字または文字列の組み込み表記規則です。たとえば、HTMLマークアップ言語では、文字を表すために多数の文字エンティティと数値エンティティを使用できます。HTML では、「<」は「<」を表すために事前宣言エンティティとして使用できます。このエンティティは HTML 言語の仕様によってすでに事前宣言されているため、プログラマーは使用する前に自分で宣言してはなりません。事前宣言エンティティは、エンコードされていない形式では競合が発生する可能性のある情報を表すエスケープ シーケンスとしてよく使用されます。
事前宣言変数
変数が事前に宣言されている場合、プログラマーは関心があるかもしれない情報を得ることができます。たとえば、Perl言語では、変数%ENV が事前に宣言されており、オペレーティング システム、ホスト情報、ユーザー情報など、あらゆる種類の環境情報を保持しています。Perl で事前に宣言されているその他の変数は、%INC と %SIG です。ほとんどすべての一般的なプログラミング言語は、何らかの形でこのような事前宣言された変数をプログラマーに提供しています。
変数が事前宣言されている場合、通常、事前宣言された名前の値も同時に事前割り当てされていると想定されます。
事前宣言されたオブジェクト
事前に宣言されたオブジェクトの目的は、事前に宣言された変数と同じです。たとえば、JavaScript言語では、ナビゲーター オブジェクトを使用して、対象のスクリプトを実行しているブラウザーに関するあらゆる種類の情報を取得できます。
事前に宣言された関数と命令
事前宣言された関数または命令は、一般的なタスクを実行するための組み込みツールです。たとえば、初期のプログラミング言語では、平方根は手動で計算する必要がありました。今日のプログラミング言語には、このタスク用の事前宣言された命令または関数があります。事前宣言された関数または命令は、多くの場合、一般的なタスクを保持し、プログラマーの作業を簡素化することを目的としています。一部の言語では、利用可能な事前宣言された命令または関数は、外部ライブラリまたはモジュールを使用して拡張できます。
狭義の意味
厳密な意味論的意味では、事前宣言という用語は、代入が行われる前の変数の宣言を指すこともあります。次の例では、最初の行が (事前) 宣言で、2 行目が代入です。
var A;
A = 1;
名前 A を宣言することにより、プログラムはA という変数の名前空間を作成します。ほとんどの最新言語では、次の命令でまったく同じことが実現されるため、変数を別の行で事前に宣言する必要はありません。
変数A = 1;
初期のコンピュータ言語では、変数は必ず別の命令として事前に宣言する必要がありました。これは、変数の実際の値を RAM に格納する前に、オペレーティング システムが使用可能なRAMに一連のバイトを予約する必要があったためです。宣言と割り当ては、現在ではほとんど同じ命令行に出現しますが、依然として根本的に異なる 2 つのものです。
