ショートカット
ファシリテーター × あり方
コーディングの向こう側
Hello, ANOTHER world!
オブジェクト指向のはなし
プログラミングのはなし
C言語実力診断クイズ
eSkillBooks
プログラミングのはなし

スケルトンを作る

ソースコードのひな形をスケルトンと言います。たくさんのファイルで構成されるプログラムでは、各ファイルを同じような書式で書くと効率が良いので、スケルトンを作ります。自分専用のヘッダファイルもスケルトンからインクルードしておきます。

スケルトンはインターフェイスを定義したヘッダファイルとインプリメント(実装)のためのソースファイルの2つで1組になります。

Cのモジュールのスケルトン:

  • インプリメント(ファイル名は *.c)
    他のモジュールから参照可能なグローバル関数の定義と、そこから間接的に参照されるファイルスコープ関数の定義を納める場所を作っておきます。自分専用のヘッダはここからインクルードします。また、対応するインターフェイスファイルもインクルードすると良いでしょう(仮のファイル名を付けておきます)。
  • インターフェイス(ファイル名は *.h)
    他のモジュールから参照可能なグローバル関数の宣言と、それに付随する構造体や typedef を納める場所を作っておきます。

C++のクラスのスケルトン:

  • インプリメント(ファイル名は *.cpp など)
    クラスのメンバ関数(inline 関数は除く)の定義を納める場所を作っておきます。コピーコンストラクタや代入・比較などの演算はだいたいパターンが決まっているので、スケルトンの段階で基本形を作っておきます(仮のクラス名を付けておきます)。自分専用のヘッダはここからインクルードします。また、対応するインターフェイスファイルもインクルードすると良いでしょう(仮のファイル名を付けておきます)。
  • インターフェイス(ファイル名は *.h)
    クラスの宣言と inline メンバ関数を納める場所を作っておきます(仮のクラス名を付けておきます)。プロジェクトで共通のスーパークラスがある場合はスケルトンの段階で書いておくと便利です(このときデストラクタが virtual になるように注意)。

新しいモジュールやクラスを作るときにはスケルトンを1組コピーして使います。コピーしたらまずファイルの先頭に今日の日付を入れます。仮のファイル名を正式なものに置換して、仮のクラス名をこれから作ろうとしているクラスの名前に置換します。そうしたら、コーディングを開始する前にコメントを書きます。

(「プログラミングのはなし」は1998年1月から1999年1月にかけて作成されたコンテンツです。)