テスト駆動開発による組み込みプログラミングも良い本です
「テスト駆動開発による組み込みプログラミング」を頂きました。
ありがとうございます。
既に色んな方が感想を書かれています。
【元ネタ】
「テスト駆動開発による組み込みプログラミング」 - Yasuo's Notebook
[書評]テスト駆動開発による組み込みプログラミング | Ryuzee.com
O'Reilly Japan - テスト駆動開発による組み込みプログラミング
書籍『テスト駆動開発による組み込みプログラミング』:柴田 芳樹 (Yoshiki Shibata):So-netブログ
"これこそ私の探していたものだった" - テスト駆動開発による組み込みプログラミング: 菊と書評
テスト駆動開発は設計技法である~組み込みアジャイルコーチ James Grenning さんインタビュー: プログラマの思索
C言語でTDDをやる場合、JavaやRubyに比べると、リフレクションやモックのプログラミングが難しいため、C特有のテクニックが必要になる。
「テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計」では、テストダブルのようないくつかのテクニックが公開されているので、組み込み系の人にとっては注目すべき内容だろう。
TDDによる設計の観点では、SOLIDという設計原則でまとめられている。
「アジャイルソフトウェア開発の奥義」に詳しく書かれている。
・単一責任の原則(SRP)
・オープン・クローズドの原則(OCP)
・リスコフの置換原則(LSP)
・依存関係逆転の原則(DIP)
・インターフェイス分離の原則(ISP)
詳細は「オブジェクト指向の法則集@石井勝さん」のページが詳しい。
TDDでプログラミングする利点の一つは、テストしやすいインターフェイスを考えることで、自然にプログラム設計でき、しかもプログラムの品質も良くなることだろう。
手続き型言語でガリガリ書くと、どうしても長いメソッドになり、後からテストしにくい設計になってしまいがち。
ドライバやスタブでテストできるようにするには、そのようなインターフェイス設計にしなければならないからだ。
「テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計」は組み込み系の人だけでなく、JavaやRubyの人にも参考になる本だと思います。
| 固定リンク
「プログラミング」カテゴリの記事
- Javaのモジュールシステムの考え方をまとめてみた(2022.10.21)
- Javaのモジュールシステムは複雑性をより増している(2022.09.10)
- Javaはなぜ関数型言語になろうとしているのか(2022.09.02)
- Javaのラムダ式の考え方(2022.08.10)
- Javaはオブジェクト指向言語ではなく関数型言語だった~「[増補改訂]関数プログラミング実践入門」はお勧めの本だ(2022.08.06)
「ソフトウェア」カテゴリの記事
- Javaのモジュールシステムの考え方をまとめてみた(2022.10.21)
- Javaのenum型はシングルトンクラスみたいだ(2022.06.20)
- テスラが従来の自動車メーカーと異なるところは工場までソフトウェア化すること(2022.02.09)
- 「RubyやRailsは終わった」という記事のリンク(2022.01.09)
- 実践した後に勉強するのがエンジニアの本来の道(2022.01.09)
「ソフトウェア工学」カテゴリの記事
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- マイクロサービス設計は従来のアーキテクチャ設計と何が違うのか(2024.01.02)
- 「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか(2023.11.12)
「Agile」カテゴリの記事
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- 「GitLabに学ぶ 世界最先端のリモート組織のつくりかた」の感想(2023.12.10)
- 概念モデリングや設計原則は進化しているのか(2023.10.21)
「Ruby」カテゴリの記事
- 「コーディングを支える技術」は良い本だ(2022.05.26)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- 「RubyやRailsは終わった」という記事のリンク(2022.01.09)
- ITの技術や知識はツールの習得と表裏一体である(2021.03.26)
- JRubyの終焉(2020.06.09)
コメント