組込みソフトウェア開発のための構造化プログラミング(クミコミソフトウェアカイハツノタメノコウゾウカプログラミング)
- 著者:
- SESSAME WG2(セサミワーキンググループツー)
- 出版社:
- 翔泳社
- 出版日:
- 2016年09月05日頃
- ISBN:
- 9784798147611
- シリーズ:
- 組込みエンジニア教科書
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
組込みソフトウェアは開発は、リソースの制限が厳しい上に、堅牢性、リアルタイム性など、より高い完成度が要求されます。これらを克服するために、要件定義、分析、設計などの上流工程、およびプログラミングの方法論が数多く提唱されてきました。しかし、こららはやや難解で初心者には敷居が高いという一面がありました。
本書は、組込みシステム開発の下流工程に注目して構造化設計を学びます。題材は、レゴマインドストームを使って組み立てた自動走行ロボットです。筐体を 2 つのタイヤで倒立させてバランスを保ち、床面に描かれたラインをセンサーでたどって走行します。この制御をプログラムで行います。一見難しそうですが、実はとてもシンプルなプログラムで実現しています。このソースコードと設計図を見比べていくことで、プログラミングと設計を同時に習得することを目指します。
本書で学ぶ構造化設計と C 言語によるプログラミンは、普遍的かつ汎用的なので、業界や時代を問わず活用することができます。
【本書の特徴】
・プログラミングと設計の基本を同時に学べる
・親しみやすく汎用的な例題
・業界/時代を問わず役に立つ知識が得られる
Chapter 1. 良いソースコードとは
Chapter 2. 良いコードを見る
Chapter 3. 良い設計図を見る
Chapter 4. ソフトウェア設計の基本
Chapter 5. コードと設計図を同期させる
Chapter 6. 7 つの設計指針
Chapter 7. 設計品質の指標
Chapter 8. 設計中心開発
Appendix A. ソフトウェア疲労 (良くない例)
Appendix B. ソフトウェア設計の定石
Appendix C. 構造化モデリングの実施例
Appendix D. 配列とポインタの文法
技書の森解説
組込みソフトウェアの世界では、メモリ制約やリアルタイム性の要求から、オブジェクト指向よりも C 言語による構造化プログラミングが依然として主流です。しかし「構造化プログラミング」を体系的に、かつ組込み固有の事情を踏まえて教える書籍は多くありません。本書は組込みソフトウェア技術者育成研究会 (SESSAME) のワーキンググループが執筆した教材であり、教育現場での利用を念頭に置いた丁寧な構成が特徴です。
関数分割の考え方、制御構造の正しい使い方、状態遷移設計、モジュール間のインターフェース設計など、組込みの実務で品質問題の温床になりがちなポイントを一つずつ取り上げます。「動くコード」から「保守できるコード」への転換を促す内容であり、独学で C を覚えた人が自己流の癖を見直す契機にもなります。
対象は組込みソフトウェア開発の初級〜中級者で、 C 言語の文法は一通り理解している前提です。 Web やアプリ開発のエンジニアが読んでも得るものはありますが、題材がハードウェア寄りであるため、組込みの現場に軸足がある人にこそ投資効果の高い一冊です。
言及 Qiita 記事 (5 件)
AVR 組み込み開発で C++ を上手く使いたい
♡ 7C++, embedded, AVR書籍【組込みソフトウェア開発のための構造化プログラミング】の写経をレゴマインドストーム(EV3)でやってみた
♡ 2設計, EV3, 組込みソフトウェア開発のための構造化プログラミング要求仕様 @kazuo_reve 新人展開(19)
♡ 2新人プログラマ応援, 小川メソッド, DoCAP, Qiitadelika, みんなで新人を育てよう!20 Days at Structured Programming and UML using PlantUML and ChatGPT
♡ 0uml, PlantUML, ChatGPT, StructuredProgrammingProgrammer, Day 16
♡ 0IT, 構造化, 職業訓練, Cの精神, DoCAP
この本に興味がある方におすすめ
この本に関連
