テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計 の感想
参照データ
タイトル | テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計 |
発売日 | 販売日未定 |
製作者 | James W. Grenning |
販売元 | オライリージャパン |
JANコード | 9784873116143 |
カテゴリ | ジャンル別 » コンピュータ・IT » プログラミング » C |
購入者の感想
ハードウェアを制御する必要がある組込みシステムにおいて、開発者は、xUnitを適用することや、xUnitを活用したテスト駆動開発を導入するのは難しいと考えがちだ。本書は、そのような立場の読者を想定し、組込みシステムにおいても、少しの工夫によってxUnitを使ったテスト駆動開発が適用できることを、具体的な演習を通じて体験的に理解できるよう構成してある。
まず、いきなりテスト駆動のサイクルを押しつけてはこない。組込みシステム固有の問題を挙げては、その回避や対処の方法を示し、それから一つの段階を適用するという手順で、徐々に適用を進めていく。この進め方であれば、テスト駆動に懐疑的な開発者も得心するところがあるであろうと感じた。
そして、本書の演習に従ってテスト駆動を演習してみれば、ハードウェアを動かすコードと機器としての機能を提供するアプリケーション側のコードがきちんと分離された構造を得ることにつながることも体感できる。組込みシステムの開発者は、ハードウェアを動かすために書いたコードを膨らませてアプリケーションを作りがちだが、そのような状況を改善する方法を解説していると見なすこともできるだろう。
また、組込みシステムにテスト駆動を適用するときに遭遇しがちな問題には個々に対処しているが、このとき紹介している方法の多くは、組込みシステムのプログラマがコードを書く際やテストの際に経験的に利用しているものであることに気づくだろう。それぞれの工夫について呼称を伴って紹介しているので、組込みプログラミングにおける各種テクニックを紹介しているという見方もできるかもしれない。登場するのは、データ隠蔽、シングルインスタンスモジュール、マルチインスタンスモジュール、デュアルターゲット、テストダブル、スタブなどだ。
まず、いきなりテスト駆動のサイクルを押しつけてはこない。組込みシステム固有の問題を挙げては、その回避や対処の方法を示し、それから一つの段階を適用するという手順で、徐々に適用を進めていく。この進め方であれば、テスト駆動に懐疑的な開発者も得心するところがあるであろうと感じた。
そして、本書の演習に従ってテスト駆動を演習してみれば、ハードウェアを動かすコードと機器としての機能を提供するアプリケーション側のコードがきちんと分離された構造を得ることにつながることも体感できる。組込みシステムの開発者は、ハードウェアを動かすために書いたコードを膨らませてアプリケーションを作りがちだが、そのような状況を改善する方法を解説していると見なすこともできるだろう。
また、組込みシステムにテスト駆動を適用するときに遭遇しがちな問題には個々に対処しているが、このとき紹介している方法の多くは、組込みシステムのプログラマがコードを書く際やテストの際に経験的に利用しているものであることに気づくだろう。それぞれの工夫について呼称を伴って紹介しているので、組込みプログラミングにおける各種テクニックを紹介しているという見方もできるかもしれない。登場するのは、データ隠蔽、シングルインスタンスモジュール、マルチインスタンスモジュール、デュアルターゲット、テストダブル、スタブなどだ。