| Management number | 233484860 | Release Date | 2026/06/27 | List Price | $11.40 | Model Number | 233484860 | ||
|---|---|---|---|---|---|---|---|---|---|
| Category | |||||||||
Go beyond C by applying modern C++ in embedded systems to enhance code readability, maintainability, and scalabilityFree with your book: DRM-free PDF version + access to Packt's next-gen Reader*Key FeaturesBridge the gap between C and modern C++ for embedded systems through practical examplesLearn how to save memory and cut down on runtime computing using compile-time computation techniquesImprove your software design skills by applying patterns to solve common problems in embedded systems using C++Purchase of the print or Kindle book includes a free PDF eBookBook DescriptionTransitioning from C can be daunting, with concerns about performance overhead, added complexity, and unfamiliar tooling. Addressing these challenges, Amar Mahmutbegovic, an advocate for modern C++ in embedded development, shows how to harness zero-cost abstractions, compile-time checks, and modern C++ capabilities to preserve performance while achieving safer, cleaner code. This book bridges the gap between traditional C and advanced C++, helping you retain the efficiency C developers expect while unlocking safety and expressiveness of modern C++.Starting with a modern development environment setup, including a Docker container for seamless example replication, you’ll overcome challenges of using the C++ standard library in memory-constrained settings and explore the Embedded Template Library (ETL) as an alternative. The book walks through essential C++ concepts before exploring advanced topics such as templates, strong typing, error handling, compile-time computation, and RAII. Through practical examples, you'll implement a sequencer, write a type-safe HAL, and apply patterns like Command, State, and Observer to solve embedded problems.By the end, you’ll be able to apply modern C++ to develop robust, modular firmware with performance matching or exceeding hand-coded C solutions.*Email sign-up and proof of purchase requiredWhat you will learnDebunk myths and misconceptions about using C++ in embedded systemsSet up build automation tailored for C++ in constrained environmentsLeverage strong typing to improve type safetyApply modern C++ techniques, such as Resource Acquisition Is Initialization (RAII)Use Domain Specific Language (DSL) with a practical example using Boost SMLImplement software development best practices, including the SOLID principle, in embedded developmentWho this book is forThis book is for embedded developers who primarily use C and want to adopt a modern C++ approach. It introduces fundamental C++ concepts, making it suitable for beginners, while also assuming basic familiarity to fully leverage advanced features like compile-time computation. Even those with prior C++ experience will discover new ways to apply modern best practices to write more efficient and maintainable embedded applications.Table of ContentsDebunking Common Myths about C++Challenges in Embedded Systems with Limited ResourcesEmbedded C++ EcosystemSetting Up the Development Environment for a C++ Embedded ProjectClasses – Building Blocks of C++ Applications Beyond Classes – Fundamental C++ ConceptsStrengthening Firmware – Practical C++ Error Handling Methods Building Generic and Reusable Code with Templates Improving Type-Safety with Strong Types Writing Expressive Code with LambdasCompile-Time Computation Writing C++ HALWorking with C LibrariesEnhancing Super-Loop with Sequencer (N.B. Please use the Read Sample option to see further chapters) Read more
| ASIN | B0F2MS788M |
|---|---|
| XRay | Not Enabled |
| ISBN13 | 978-1835881156 |
| Edition | 1st |
| Language | English |
| File size | 10.0 MB |
| Page Flip | Enabled |
| Publisher | Packt Publishing |
| Word Wise | Not Enabled |
| Print length | 404 pages |
| Accessibility | Learn more |
| Screen Reader | Supported |
| Publication date | July 2, 2025 |
| Enhanced typesetting | Enabled |
If you notice any omissions or errors in the product information on this page, please use the correction request form below.
Correction Request Form