プログラムの読み方のコツ

プログラミングの学習を始めたばかりの初心者が、他人の書いた小規模のプログラムを読むときのコツを書きます。自分でコードを書くときにも、いつかは誰かが読むであろうと考えて、分かりやすいコードを書くようにしましょう。

読み取らなければならないこと

プログラムの内容を理解するに先立ち、必ず読み取らなければならないことは、何というグローバル変数とサブルーチン(関数)が定義されているかということです。

グローバル変数とその役割は何か

  1. グローバル変数として、何が定義(宣言)されているかをチェックします。
  2. 次に、それらのグローバル変数は、何を目的として導入されたのかを読み取ります。変数名やコメントがヒントになります。
    これらのヒントがない場合には、プログラムの流れを読み取らないと、その目的がわからない場合もあります。

サブルーチンとその機能は何か

  1. サブルーチン(または関数)として、何が定義(宣言)されているかをチェックします。
  2. 各々のサブルーチンについて、どのような機能をもったサブルーチンなのかを読み取ります。その際に、入力となる変数やその値、出力となる値あるいはサブルーチンの実行によって変更される変数の値は何かをチェックします。サブルーチンの名前やコメントがヒントになります。
    サブルーチンの定義で、どのようなローカル変数が定義(宣言)されているかをチェックして、プログラムを読んでいくことになります。サブルーチンの定義の中で、別のサブルーチンが呼び出されることがよくあるので、そのサブルーチンの機能を読み取ってからまた戻るといった複雑な作業になりがちです。

自分がコンピュータになったつもりで、トレース

プログラムの流れを理解するには、具体的なパラメータの値を想定して、自分がコンピュータになったつもりで、メインルーチンを辿っていくしかありません。パラメータの値が変わると、プログラムの流れがどう変わるかを読み取っていくことで、プログラムの内容が理解できるようになります。

慣れるまでは、印刷してチェック

グローバル変数やサブルーチンの名前をチェックする必要があるので、プログラムを行番号付きで印刷して赤ペンでチェックすると良いです。チェックの取りこぼしが減りますし、全体像が把握できる場合もあります。
何という名前のグローバル変数とサブルーチン(関数)があるかが暗記できてしまえば、印刷する必要はありませんが、なかなかそうはできないので、印刷して赤ペンでメモを書きこみながら読むのは効果的です。印刷しなくても、グローバル変数やサブルーチンの役割と機能をファイルにメモして行くというやり方でも、同様の効果があります。


ホームへ戻る

Last update: