キンサクプログラマー

お金儲けと技術のメモ

【書評】テスト駆動開発による組み込みプログラミングを読んで

だいぶ前に購入した「テスト駆動開発による組み込みプログラミング」を読んだ。

 

 タイトル通り、テスト駆動開発(以後TDD)をいかにして「組み込み開発」に取り入れるかという話。冷蔵庫、車、プリンタなど世の中の電子機器に乗っているファームウェアを開発する場合、当然ながら実機が最終的には必要となる。これらの機器を操るためには汎用CPUではなく、組み込みCPUやASICの周辺機能によってセンサやモータを操る為、パソコン上での確認には限界がある。多くの現場では「ハード依存のソフトの単体テストをPC上でやってもなぁ〜」って思ってやらないのかもしれないが、うまくハード依存の部分を分離してやれば、効果のあるテストができるよ!ってことだ。

ざっくり内容としては、

  • TDDの原則・進め方
  • ツールCppTest、Unityの使い方
  • LEDを点灯させるモジュールを対象にTDDを実践
  • 仮想環境・実環境の切り替え可能な開発方法
  • 一般的なリファクタリング方法

といったところだろうか。

【感想】

そもそもこの本を購入したのは仕事でTDDできないかなぁと思ったのがきっかけだった。内容は非常にわかりやすく丁寧だ。一つ一つTDDのプロセスを進める中で注意点を説明してくれる(詳しすぎる部分もある)。リファクタリングに関する内容も1/3くらいあって個人的にはうれしかった。

 ちょっとだけわからなかったのがRTOSの機能をどう実現するかについてだけど、まぁ本題ではないのでよしとしたい(付録に数ページ書いてある)。

 じゃぁ、すぐに仕事に導入できるかどうかだが、多少本腰をいれて検討すれば十分できると思った。

目から鱗という事は無くても、買って損はしない良書だ。