Clean C++20: Sustainable Software Development Patterns and Best Practices

  • 6h 40m
  • Stephan Roth
  • Apress
  • 2021

Write maintainable, extensible, and durable software with modern C++. This book, updated for the recently released C++20 standard, is a must for every developer, software architect, or team leader who is interested in well-crafted C++ code, and thus also wants to save development costs. If you want to teach yourself about writing better C++ code, Clean C++20 is exactly what you need. It is written for C++ developers of all skill levels and shows by example how to write understandable, flexible, maintainable, and efficient C++ code. 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.

If you don't take care with your codebase, you can produce a large, messy, and unmaintainable beast in any programming language. However, C++ projects in particular are prone to get messy and tend to slip into a maintenance nightmare. There is lots of C++ code out there that looks as if it was written in the 1980s, completely ignoring principles and practices of well-written and modern C++.

It seems that C++ developers have been forgotten by those who preach Software Craftsmanship and Clean Code principles. The web is full of C++ code examples that may be very fast and highly optimized, but whose developers have completely ignored elementary principles of good design and well-written code. This book will explain how to avoid this and how to get the most out of your C++ code. You'll find your coding becomes more efficient and, importantly, more fun.

What You Will Learn

  • Gain sound principles and rules for clean coding in C++
  • Carry out test-driven development (TDD)
  • Better modularize your C++ code base
  • Discover and apply C++ design patterns and idioms
  • Write C++ code in both object-oriented and functional programming styles

Who This Book Is For

Any C++ developer or software engineer with an interest in producing better code.

About the Author

Stephan Roth is a coach, consultant, and trainer for systems and software engineering with German consultancy company oose Innovative Informatik eG located in Hamburg. Before he joined oose, he worked for many years as a software developer, software architect, and systems engineer in the field of radio reconnaissance and communication intelligence systems. He has developed sophisticated applications, especially in a high-performance system environment, and graphical user interfaces using C++ and other programming languages. Stephan is an active supporter of the Software Craftsmanship movement and is concerned with principles and practices of Clean Code Development (CCD).

In this Book

  • Introduction
  • Build a Safety Net
  • Be Principled
  • Basics of Clean C++
  • Advanced Concepts of Modern C++
  • Modularization
  • Functional Programming
  • Test-Driven Development
  • Design Patterns and Idioms