Well-written code is a key success factor in ensuring that software remains easily maintainable and extensible throughout its whole lifecycle. Clean C++20 is about writing sustainable, well-maintainable and durable software with modern C++ (C++11 or higher language standards).
Learn principles and practices of Clean Code Development
Clean C++20 contains many principles that will keep your C++ code readable, understandable and extensible.
Based on modern C++
The content of Clean C++20 is based on the C++ language standard C++20 (ISO/IEC 14882:2020 – Programming Language C++), but most of it is also applicable to previous C++ versions.
Learn the most important design patterns
The book also discusses common design patterns, e.g., Strategy, Composite, Observer and Dependency Injection.
Make Test-Driven Development (TDD) your strategy for success
Learn why a test-first approach offers a variety of benefits and can significantly improve the design of your software.
Ensure that even a large code base stays in shape
Learn about how to make a large and complex C++ code base more manageable through modularization, decoupling, principles of object-orientation and dependency management.
For beginners and also experienced developers
Whether you're just starting out in software development or you're a seasoned developer: Clean C++20 is written for C++ developers of all skill levels.
For beginners and also experienced C++ developers. Even if you are a seasoned C++ developer, there are nuggets and data points in this book that you will find useful in your work.
A lot of fundamental architectural decisions, especially those concerning the quality aspects of comprehensibility, maintainability, extensibility and analyzability, are influenced by the way code is written.
Even in an agile project environment, code quality can go down the drain, resulting in a decrease in development speed. Managers should therefore also know that it is important to keep the code base in good condition and to accumulate as little technical debt as possible.
QA People and Tester
Testing and Test-Driven Development (TDD) are essential cornerstones of modern software development. People from QA can learn how unit-testing and TDD can ensure a very high basic quality.
Training Providers and Consultants
Clean C++20 can also be used as a companion book in trainings and advanced education courses. If you are interested in an on-site training about Clean Code Development with modern C++, feel free to contact my company oose eG in Hamburg (Germany) for further informations.
About The Author
Stephan Roth, born on May 15, 1968, is a passionate coach, consultant, and trainer for Systems and Software Engineering with German consultancy company oose eG located in Hamburg. Before he joined oose, Stephan worked for many years as a software developer, software architect, and systems engineer in the field of radio reconnaissance and communication intelligence (COMINT) systems. He has developed sophisticated applications, especially for distributed systems with ambitious performance requirements, and graphical user interfaces using C++ and other programming languages.
Stephan is also a speaker at professional conferences and author of several publications. As a member of the Gesellschaft für Systems Engineering e.V., the German chapter of the international Systems Engineering organization INCOSE, he is also engaged in the Systems Engineering community.
Stephan lives with his family in Bad Schwartau, a town near Lübeck (northern Germany), about 10 km from the Baltic Sea coast.