Refactoring with C++
Packt Publishing Limited (Verlag)
978-1-83763-377-7 (ISBN)
Key Features
Enrich your coding skills using features from the modern C++ standard and industry approved libraries
Implement refactoring techniques and SOLID principles in C++
Apply automated tools to improve your code quality
Purchase of the print or Kindle book includes a free PDF eBook
Book DescriptionDespite the prevalence of higher-level languages, C++ is still running the world, from bare-metal embedded systems to distributed cloud-native systems. C++ is on the frontline whenever there is a need for a performance-sensitive tool supporting complex data structures. The language has been actively evolving for the last two decades.
This book is a comprehensive guide that shows you how to implement SOLID principles and refactor legacy code using the modern features and approaches of C++, the standard library, Boost library collection, and Guidelines Support Library by Microsoft. The book begins by describing the essential elements of writing clean code and discussing object-oriented programming in C++. You’ll explore the design principles of software testing with examples of using popular unit testing frameworks such as Google Test. The book also guides you through applying automated tools for static and dynamic code analysis using Clang Tools.
By the end of this book, you’ll be proficient in applying industry-approved coding practices to design clean, sustainable, and readable real-world C++ code.What you will learn
Leverage the rich type system of C++ to write safe and elegant code
Create advanced object-oriented designs using the unique features of C++
Minimize code duplication by using metaprogramming
Refactor code safely with the help of unit tests
Ensure code conventions and format with clang-format
Facilitate the usage of modern features automatically with clang-tidy
Catch complex bugs such as memory leakage and data races with Clang AddressSanitizer and ThreadSanitizer
Who this book is forThis book will benefit experienced C++ programmers the most, but is also suitable for technical leaders, software architects, and senior software engineers who want to save on costs and improve software development process efficiency by using modern C++ features and automated tools.
Dmitry Danilov is an engineer and team manager with over 15 years of experience in C++. Throughout his career, he has developed network sniffers and analyzers, audio/video streaming solutions, low-level embedded applications in telecommunications, and distributed systems. Originally from Odesa, Ukraine, Dmitry graduated with a Master's degree in Computer Engineering from Odesa National Polytechnic University. He currently resides in Tel Aviv, Israel, where he continues to advance his career in technology. In addition to his professional career, Dmitry demonstrates his passion for knowledge sharing and engaging with the tech community through his blog and by actively speaking at various events, including Core C++ Conference and Core C++ Group Meetup Israel.
Table of Contents
Coding Standards in C++
Main Software Development Principles
Causes of Bad Code
Good Candidates for Rewriting - Patterns and Anti-Patterns
The Significance of Naming
Utilizing a Rich Static Type System in C++
Classes, Objects, and OOP in C++
Designing and Developing APIs in C++
Code Formatting and Naming Conventions
Introduction to Static Analysis in C++
Dynamic Analysis
Testing
Modern Approach to Managing Third Parties
Version Control
Code Review
Erscheinungsdatum | 22.08.2024 |
---|---|
Verlagsort | Birmingham |
Sprache | englisch |
Maße | 191 x 235 mm |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Informatik ► Theorie / Studium ► Algorithmen | |
ISBN-10 | 1-83763-377-0 / 1837633770 |
ISBN-13 | 978-1-83763-377-7 / 9781837633777 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich