前置き
項目としては短いですが、ここで紹介される4分類はプログラミングにおいて、重要な要素を担っていますので、コードがんがん書く人はしっかり理解しておいた方がいいです。
プログラミング
プログラム構造
次の4つに分類される。
- 再使用可能(リユーザブル)プログラム
一度使用したプログラムを再度使えるかどうか。
現在殆どのプログラムはこれに該当する。 - 再入(リエントラント)プログラム
使用中でも再度入って起動できるプログラム。複数立ち上げられる。それぞれのプログラムを独立で管理する領域が必要。そして、必ず再使用可能プログラムにあたる。 - 再帰(リカーシブ)プログラム
自分自身を呼び出せる再帰のアルゴリズムを持つプログラム。そして、自分自身に再入するので、必ず再入プログラムにあたる。 - 再配置(リロケータブル)プログラム
メモリ上で再配置できるプログラム。メモリのアドレス指定時に相対アドレスで指定できるものはこれにあたる。メモリの位置を指定する必要のあるもの(OSとか)はこれになる。
逐次再使用可能プログラム(Serially Reusable Program)
再使用プログラムの一種。
再使用プログラムのうち、複数の要求が来た時に一度に一つずつしか処理を行わないプログラムのこと。これは、再入可能プログラムにはならない。
Tips
再入可能プログラムの例として、IEなどのWebブラウザがある。
最後に
Javascriptで再帰プログラムはよく書きます。
使いどころを間違えなければ便利な機能だと思います。