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 looksas 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.
Зміст
CH01 – Introduction.- CH02 – Build a Safety Net.- CH03 – Be Principled.- CH04 – Basics of Clean C++.- CH05 – Advanced concepts of modern C++.- CH06 – Object Orientation.- CH07 – Functional Programming.- CH08 – Test Driven Development.- CH09 – Design Patterns and Idioms.- Appendix A – Small UML Guide.- Bibliography.
Про автора
Stephan Roth is a coach, consultant, and trainer for systems and software engineering with German consultancy company oose Innovative Informatik e G 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).