コンパイル時間

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

コンピュータサイエンスではコンパイル時(またはコンパイル時)とは、コンパイラによって実行される操作(「コンパイル時操作」)、正常にコンパイルされるためにソースコードが満たす必要のあるプログラミング言語要件(「コンパイル時の要件」)、またはコンパイル中に推論できるプログラムのプロパティ。コンパイル時間とは、プログラミングコードがマシンコード(つまりバイナリコード)に変換される時間のことで、通常は実行時より前に発生します。

コンパイル時/アーリーバインディングvs実行時

実行モデルの決定は、コンパイル時の段階で設定されています。実行時-実行と割り当ての方法は、実行時に設定され、実行時の動的性に基づいています。

概要

コンパイル時に実行される操作には、通常、構文解析、さまざまな種類のセマンティック解析(たとえば、型チェックテンプレートのインスタンス化)、およびコード生成が含まれます。

プログラミング言語の定義は通常、正常にコンパイルされるためにソースコードが満たさなければならないコンパイル時の要件を指定します。たとえば、言語では、型と変数に必要なストレージの量を推測できると規定されている場合があります。

コンパイル時に推論できるプログラムのプロパティには、範囲チェック (たとえば、配列インデックスが配列の境界を超えないことの証明)、並行言語でのデッドロックの自由、またはタイミング(たとえば、コードのシーケンスにかかることの証明)が含まれます。割り当てられた時間内)。

コンパイル時間は、リンク時間(1つ以上のコンパイル済みファイルの出力が結合されるとき)およびランタイムプログラム実行されるとき)の前に発生します。一部のプログラミング言語では、実行時にコンパイルとリンクを実行する必要がある場合があります。コンパイル時とリンク時の間にはトレードオフがあり、多くのコンパイル時の操作は、余分な実行時間を発生させることなくリンク時まで延期できます。


「コンパイル時間」は、コンパイルに必要な時間を指すこともあります。

も参照してください