- Paperback: 389 pages
- Publisher: CRC Press (July 2002)
- Language: English
- ISBN-10: 1578201101
- ISBN-13: 978-1578201105
- Product Dimensions: 9.1 x 7.4 x 1.1 inches
- Shipping Weight: 1.9 pounds (View shipping rates and policies)
- Average Customer Review: 22 customer reviews
- Amazon Best Sellers Rank: #1,666,272 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Practical Statecharts in C/C++: Quantum Programming for Embedded Systems with CDROM
Use the Amazon App to scan ISBNs and compare prices.
There is a newer edition of this item:
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
...downright revolutionary... The title is a major understatement... "Quantum Programming" may ultimately change the way embedded software is designed. -- Michael Barr, Editor-in-Chief, Embedded Systems Programming magazine, August 2002
Beyond simply talking about concepts, Miro provides complete source code and code walkthroughs. -- Brian Schmidt, Sr. Design Engineer, Plexus Technology Group
About the Author
Dr. Miro Samek is the founder and president of Quantum Leaps, an open source company providing lightweight, state machine-based, event-driven application frameworks for embedded systems. He is the author of Practical Statecharts in C/C++ (CMP Books, 2002), has written numerous articles for magazines, including a column for C/C++ Users Journal, is a regular speaker at the Embedded Systems Conferences, and serves on the editorial review board of the Embedded Systems Design magazine. For a number of years, he worked in various Silicon Valley companies as an embedded software architect and before that he worked as an embedded software engineer at GE Medical Systems (now GE Healthcare). Dr. Samek earned his Ph.D. in nuclear physics at GSI (Darmstadt, Germany).
Browse award-winning titles. See more
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
This book shows you the power of state machines.
He takes the reader way beyond if/else and switch statements.
This book clearly shows how to map the problem space onto the solution space using statemachines
It also promotes reuse instead of ahoc statemachine design.
Via the state function pointers, and state objects and class inheritance a web of if/else are reduced and often elimated. My one reservation is usage of C++ macros may be a bit much cumbersome at times
One ofther quites sweet result is it show you how to make self describing code which is easily related to
high level state diagrams
If your thinking of employing a statemahine
I whole heartedly recommend this book.
I think that this book is really useful and very interesting for each interesting in C++/C. And want write programs with HSM behind as behavior rules of program.
For conclusion: Useful and easy reading book.
I think this book is singularly targeted towards embedded developers, especially the ones who are into the crux of critical systems. I'm into regular OOD for PC/Web applications, and except for the first 2-3 chapters, I thought the book was impractical in today's age of environments such as .NET and high-performance hardware. This is a highly theoretical book which demands a massive change and learning curve for traditional developers.
This, however, does not undermine State Machines. State Machines, if implemented right, can work wonders for regular apps. I found the Windows Workflow Foundation to be an excellent example of practical implementation of State Machines; it does have its limitations though and is meant for high-level processes. I am probably just going to stick to State Tables and such for a simplistic model with easy debugging capabilities.
I found the UML 2 for Dummies much more practical.
- The text is too verbose and quite disorganized. Reading this I had the feeling of listening to someone rambling on and on.
- The concept is unique and quite interesting. However, it is useless as far as embedded system implementation. Think of how you are going to debug this in a real-time environment. It would be a nightmare!
- Lots of the detailed codings are encapsulated by the house-keeping codes. This is a definitely NO-NO for embedded system application if one must know every single line of executable code. (You have to know if you want to do size and speed optimization.)
- It would be a nightmare to maintain an application written using this concept. It is just not consistent with the natural flow of thinking. Don't forget that the human element can never be detached from any application.
- Debugging the state machine written using this concept is extremely difficult. (Believe me! I tried.) The concept of simply returning to the parent state if no special handling is required can be very very misleading during real-time debugging.
Simply put, if you want to read some new interesting idea, this book is for you. But if you are looking for practical idea to apply to your SW development project, I suggest you look elsewhere. The 5-star rating is very very misleading. If you are still curious, you might want to check it out first at your local Barnes&Nobles or Border before buying.
(In case anyone wonders about my background, I've been doing software development & architecture since 1988.)
All the debugging, banging and refitting I did to my classes gave me an appreciation for how much easier it would be to code and maintain statecharts using the author's pre-selected ideas and coherant, maintainable, elegant framework. My legacy design is about 180 degrees from the authors, using state objects (e.g.: I used nouns, and the author uses verbs) and all my functionality is set in externally through event and transition functions. Even using the book from that divergent viewpoint, the book's information and method of presentation was very useful.
On the logic side, I'm reimplementing some standalone FSM algorithms using my new statechart capabilities and I appreciate the grounding in practical statechart design I received from this book. This includes a basic set of the most useful and powerful features and an understanding of how to implement more complicated special purpose features if I should ever decide I need them, and also an understanding of why I may never choose to do so.
Most recent customer reviews
But the technique described in this book which is developed by Samek is very sophisticated - the library code...Read more