Expert C++: Become a proficient programmer by: learning coding best practices with C++17 and C++20‘s latest features
10 April 2020
by: Vardan Grigoryan,Shunguang Wu
Print Length 页数: 606 pages
Publisher finelybook 出版社: Packt Publishing (10 April 2020)
Language 语言: English
ISBN-10: 1838552650
ISBN-13: 9781838552657
Book Description
By finelybook
Design and architect real-world scalable C++ applications by: exploring advanced techniques in low-level programming,object-oriented programming (OOP),the Standard Template Library (STL),metaprogramming,and concurrency
C++ has evolved over the years and the latest release – C++20 – is now available. Since C++11,C++ has been constantly enhancing the language feature set. With the new version,you’ll explore an array of features such as concepts,modules,ranges,and coroutines. This book will be your guide to learning the intricacies of the language,techniques,C++ tools,and the new features introduced in C++20,while also helping you apply these when building modern and resilient software.
You’ll start by: exploring the latest features of C++,and then move on to advanced techniques like multithreading,concurrency,debugging,monitoring and high-performance programming. The book will delve into OOP principles and the C++ Standard Library,and even show you how to create custom templates. After this,you’ll learn about different approaches such as test-driven development (TDD),behavior-driven development (BDD),and domain-driven design (DDD),before taking a look at the coding best practices and design patterns essential for building professional-grade applications. Toward the end of the book,you will gain useful insights into the recent C++ advancements in AI and machine learning.
By the end of this C++ programming book,you’ll have gained expertise in real-world application development,including the process of designing complex software.
What you will learn
Understand memory management and low-level programming in C++ to write secure and stable applications
Discover the latest C++20 features such as modules,concepts,ranges,and coroutines
Understand debugging and testing techniques and reduce issues in your programs
Design and implement GUI applications using Qt5
Use multithreading and concurrency to make your programs run faster
Develop high-end games by: using the object-oriented capabilities of C++
Explore artificial intelligence(AI) and machine learning concepts with C++
Table of Contents
Preface
Section 1: Under the Hood of C++Programming
Chapter 1: Introduction to Building C++Applications
Chapter 2: Low-Level Programming with C++
Chapter 3: Details of Object-Oriented Programming
Chapter 4: Understanding and Designing Templates
Chapter 5: Memory Management and Smart Pointers
Section 2: Designing Robust and Efficient Applications
Chapter 6: Digging into Data Structures and Algorithms in
STL
Chapter 7: Functional Programming
Chapter 8: Concurrency and Multithreading
Chapter 9: Designing Concurrent Data Structures
Chapter 10: Designing World-Ready Applications
Chapter 11: Designing a Strategy Game Using Design
Patterns
Chapter 12: Networking and Security
Chapter 13: Debugging and Testing
Chapter 14: Graphical User Interface with Qt
Section 3: C++in the Al World
Chapter 15: Using C++in Machine Learning Tasks
Chapter 16: Implementing a Dialog-Based Search Engine
Assessments
Other Books You May Enjoy
Index