コードブロック【code block】

概要

コードブロックとは、プログラム中で複数の命令や文を一つのまとまりとして扱う構造。処理の範囲や実行単位を明確にするための仕組みである。多くのプログラミング言語で基本的な構文要素として専用の記法が用意されている。
コードブロックのイメージ画像

プログラムは通常、コードの先頭から順に一文ずつ実行されるが、多くの言語では条件分岐や繰り返し処理などの対象は単一の文しか指定できない。そのような場合に、複数の文からなる複雑な処理を対象とするため、特殊な記法で複数の文を括って一文として扱わせる仕組みがコードブロックである。

例えば、C言語などで「if(条件) 文1; 文2;」のように記述すると、条件が真のときのみ実行されるのは文1だけで、文2は条件分岐から外れ、条件の真偽に関わらず実行される。文1も文2も条件が真のときのみ実行したい場合には、コードブロックの記法を用いて「if(条件){文1;文2;}」のように波括弧で括れば、両方とも条件分岐の制御下に置かれる。

コードブロックを単なる文の集合ではなく、関数やメソッドと同じように変数の有効範囲であるスコープを形成する単位と規定している言語もある。その場合、ブロック内で宣言された変数は、そのブロックの外からは参照できない。この仕組みにより、同じ名前の変数を異なる場所で安全に利用できるほか、意図しない値の変更を防ぐことができる。ブロック単位でメモリ管理やライフサイクルが制御される言語もある。

記述方法はプログラミング言語によって異なるが、C言語が波括弧 { } で囲む形式を採用したため、JavaJavaScriptなどC系の記法を受け継ぐ多くの言語で同じ記法が用いられる。一方、Pascalの「begin」「end」のようにキーワードで開始と終了を指定する言語や、Pythonのように行頭の空白(インデント)の深さによってブロックを表現する言語も存在する。インデントによるブロック定義は、コードの先頭の文字の行頭からの距離が揃っている文同士がブロックを形成する仕組みで、視覚的に構造が把握しやすいとされる。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。