methaneのブログ

このブログに乗せているサンプルコードはすべてNYSLです。

コーディング規約

Cのコーディング規約には2つの分類がある。

1つめは「べからず集」。「==では定数を左にかけ」だの、「トリグラフには気をつけろ」だのが書いてある。初心者は一度読んでもいいと思うが、コレを守っても大きいプログラムがまとまる訳ではない。

2つめは「スタイルガイド」。ネーミングルールとか、ドキュメントコメントのフォーマットとかが入ってる。大き目の開発プロジェクトには必須。

組み込み業界では前者は大量にあるんだが、後者が少ない。特に、モジュール分割をする際のディレクトリ構成、ファイル名、includeパスの設定、モジュールを表すprefix、etc...を規定した、大規模開発対応のCコーディング規約が見当たらない。言語機能としてモジュール分割方法が規定されていないC言語にこそ必要なのに。

ということで、現在ライセンスフリーのスタイルガイドを捜索中。

ちなみに、「==では定数を左にかけ」は嫌い。「主語を左に」とか、「数学で式を書くときに自然な順序」が正しいと思う。