ブックマーク / eetimes.jp (2)

  • 続・バグを生まないコーディング法 | EE Times Japan

    フォーラムでの議論は次のような発言から始まった。 「中括弧を使って複合文を記述し、文の切れ目にセミコロン「;」を使う言語では、オールマン・スタイルを使うべきではない」 私はどちらのスタイルでもよいと思っているが、「1TBSでは図2のような間違いを人間のコード・レビュワーが発見しにくい」という1TBSに対する批判は受け入れがたい。 人間のコード・レビュワーが、このような間違いを見落とす可能性があることは認める。しかし、まさにこの例は、ここで紹介するようなコーディング規則の重要性を物語っている。つまり、「バグを効果的に排除するためには、コーディング規則に強制力がなければならない。2個以上の競合する規則がそれぞれバグを防げても、それらの中の1つの規則だけが自動的に強制できる場合は、より強制力がある規則の適用が推奨される」ということだ。 われわれのコーディング規則では、上記のような例はまさに自動

    suztomo
    suztomo 2009/08/01
  • バグを生まないコーディング法、10個の規則でソフト開発を効率化(3/3) ― EE Times Japan

    ●ルール6 整数値のビット長やバイト長が問題になるときは、charやshort、int、long、long longといったデータ型を使わず、固定長データ型を利用する。C言語の標準で規定されている符号付きおよび符号なしの固定長整数型は、表1の通りである。 理由は次の通りだ。ISOが策定したC言語標準「ISO/IEC 9899」では、charやshort、int、long、long longといったデータ型の長さ(ビット長)について、処理系ごとに定義することが許されており、移植性の問題を引き起こす。1999年に改定された「ISO/IEC 9899:1999」でもこの問題の潜在的な原因は解決されていないが、表1に示したビット長が一意に定義されているデータ型が新たに追加された。これらの新しいデータ型は、「stdint.h」というヘッダー・ファイルで定義されている。 ●ルール7 「&(論理

    suztomo
    suztomo 2009/05/26
  • 1