2008年12月17日

コーディングルール

こんにちは!イワサキですわーい(嬉しい顔)
今日はプログラムのコーディングルールについてお話してみたいと思います。

コーディングルール』とは何か?

コーディングルールは、プログラムのソースコードの記述をするときの文法作法のルールのことです。
例えばC言語でもっとも一般的なコーディングルールの例は次のようなものです。

【作法A】 中括弧を構文の右側に付ける


if( a > 0 ) {
   a = 0;
} else {
   a = -1;
}


【作法B】 中括弧を改行して構文の下側に付ける

if( a > 0 )
{
   a = 0;
}
else
{
   a = -1;
}


C言語にしばらく触れたことがある人は体験したことがあると思います。
これは言語そのものが改行箇所を定めておらず自由度の高いコーディングスタイルで記述できるようにという配慮からこのような記法があるのですが、極端な話ではこれを次の例のように一行に記述することもできてしまいます。ペン


【作法C】 一行に収める

if( a > 0 ) { a = 0; } else { a = -1; }



上記の記法AとBとCどれでもプログラムは問題なく動作します。
それぞれに長所と短所があります。

作法Aの場合
総行数が少なくて済む
× 括弧の位置関係が見にくい(開く・閉じるが視覚的に同列に無い)

作法Bの場合
フロー内部の処理と開始終了の区切りが見やすい
× 行に余白が多くなり間延びしてしまう(括弧1文字に一行を消費したりする為)


10年以上前のPCではハードウェアの制約で一画面に表示できる文字の行数が少なかった(20行〜30行だった)ため作法Aのスタイルがよく使われていました。
今でもそのメリットは有益ですのでこの手法をとるプログラマは多いと思います。

このようなコーディングスタイルを一貫して統一して記述しましょうというのがコーディングルールです。
さまざまな作法がごちゃごちゃに混ざったソースコードはやはり読みにくいですよね。
ここで大切なのはそのコーディングスタイルが優れているかというよりも第三者がソースコードを見るときに見やすいかどうかのほうが重要だということです。
特に企業レベルで制作するプログラムは一人ではなく複数人数で分担して一つのものを作成していきます。
そのときにお互いのソースコードが同じ書き方でなければお互いのプログラムソースコードを読むときに読みにくく感じてしまいます。
チームや会社のような大きなグループ単位でこのようなスタイルの統一を図っておけば少しでも快適な制作になるだろうと思います。

今回の例は中括弧のみでしたが、コーディングルールではほかにも様々なルールを決めることもあります。
クラス名、変数名についても大文字小文字の区別やアンダーバー、プリフィクス(ポインタにはpDataなど名前の先頭に"p"をつけるなど)やコメント文の書き方、多岐にわたって決めることもあります。
これもプログラマ同士で円滑にソースコードを運用していく為の知恵なのですひらめき

コーディングルールは作法のどれが正しくてどれが間違っているかということは一切ありませんので個々の主観によると思います。
チーム内でA派とB派に分かれて対立!むかっ(怒り)なんてことにもなりかねません(ならない!?)
ヘキサドライブでは現在、しっかりとコーディングルールを取り決めて制作の時に運用していますぴかぴか(新しい)ぴかぴか(新しい)ぴかぴか(新しい)
ソースコードは会社とプログラマの資産ですからね!パンチ
統一されることで、より一体感のあるプログラムソースコードとなるでしょう。
作品だけでなく、そのときに作られるもの全てを大切にしていこうという気持ちがヘキサドライブにはあります。

私事ですが先日、子供が産まれて命名に迷って迷って大変でした晴れさりげなくカミングアウト!?
名前を付けるって大変ですね。変数名もクラス名も、人間も! 人間も!?
みなさんも良いコーディング生活をおくってくださいね手(パー)ぴかぴか(新しい)

posted by 管理人 at 18:15 | Comment(0) | プログラミング
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。