プロシージャ【procedure】

プログラムを書いていると、同じ処理を複数の場所で繰り返す場面が多く生じる。たとえば「画面にメッセージを表示する」「計算結果をファイルに書き出す」といった処理を、必要になるたびに同じコードを書き並べるのは非効率であり、後から修正が必要になったときの作業も煩雑になる。
そのような場合に、特定の処理を行うコード群をプロシージャとしてまとめて名前を付けておけば、他のコードから名前を指定するだけで呼び出せるようになる。何度も似たようなコードを記述しなくて済むようになり、プログラムの保守性や再利用性も高まる。
プロシージャは単に同じ処理を繰り返すだけでなく、呼び出し時に「引数」と呼ばれる入力値を渡すことができ、動作にその内容を反映することができる。例えば、「文字列を表示するプロシージャ」に、様々な文字列を引数として渡せば、同じコードでも呼び出しごとに異なる結果を得られる。この仕組みによって、汎用性の高い処理部品を作成でき、プログラム全体の見通しが良くなる。
このようなコードのかたまりを作成する仕組みを何と呼ぶかはプログラミング言語によって異なり、「ルーチン」(routine)、「関数」(function)、「メソッド」(method)なども似たような仕組みを指す。言語により意味や仕様はそれぞれ異なる。PascalやVisual Basicのように、呼び出し元に値を返さないものを「プロシージャ」、返すものを「関数」と呼んで区別する場合もある。