- スペシャル
- 2016/01/05 掲載
組込み機器向けのコーディングに「MISRA C」が効果的な理由(2/2)
- ありがとうございます!
- いいね!した記事一覧をみる
MISRA Cは、安全で分かりやすく、保守性が高い
C言語で「ハードウェアの制御ができること」は大きな魅力だ。その一方で、「MISRA Cの作法的には、ハードウェア制御のコードをやたらと書いてしまってもよいのか」という問題もある。「そこでMISRA Cには、“Required”(必要)と“Advisory”(推奨)というカテゴリを設けて、場合分けをしています。これはMISRA C:2012から、きめ細かく規定されて、使いやすくなりました」
たとえばC言語でハードウェアを制御するプログラムを記述したとき、“Required”のルールに適合しない場合には、コードを修正するか、あるいは逸脱の手続きが必要になる。 一方、“Advisory”のルールは、それ以外のコードの書き方がなく、安全を保障できるならば、MISRA Cに準拠しないコードを書いてもよいことになっている。
「ハードウェアを制御するコードのルールは“Advisory”に分類され、プログラムを書きやすくなりました。一方、ハードウェアを制御する必要がないときには、“Required”のルールとして運用できるので、不用意なハードウェア制御を防ぐこともできます」
このほかにも宇野氏は「ファイル単位での情報隠ぺい」や「抽象データ型での詳細の隠蔽」に関して、MISRA Cのルールとの関連について紹介した。
最後に同氏は「MISRA Cは、安全で分かりやすく、保守性が高いため、ソフトウェア開発に有効で、設計どおりのコードを維持するために役立ちます。さらにQA・Cによって、C言語の難しい点や危険な点をチェックすれば、開発者は設計に注力できるでしょう」と、その有効性について強調して講演を終えた。
関連コンテンツ
PR
PR
PR