Expert C++: Become a proficient programmer by learning coding best practices with C++17 and C++20's latest features, 2nd Edition 2nd ed. Edition
by 作者: Marcelo Guerra Hahn (Author), Araks Tigranyan (Author), John Asatryan (Author), Vardan Grigoryan (Author), Shunguang Wu (Author)
Publisher Finelybook 出版社: Packt Publishing; 2nd ed. edition (August 25, 2023)
Language 语言: English
pages 页数: 604 pages
ISBN-10 书号: 1804617830
ISBN-13 书号: 9781804617830
Take your C++ skills to the next level with expert insights on advanced techniques, design patterns, and high-performance programming
Purchase of the print or Kindle book includes a free PDF eBook
Master templates, metaprogramming, and advanced functional programming techniques to elevate your C++ skills
Design scalable and efficient C++ applications with the latest features of C++17 and C++20
Explore real-world examples and essential design patterns to optimize your code
Are you an experienced C++ developer eager to take your skills to the next level? This updated edition of Expert C++ is tailored to propel you toward your goals.
This book takes you on a journey of building C++ applications while exploring advanced techniques beyond object-oriented programming. Along the way, you'll get to grips with designing templates, including template metaprogramming, and delve into memory management and smart pointers. Once you have a solid grasp of these foundational concepts, you'll advance to more advanced topics such as data structures with STL containers and explore advanced data structures with C++. Additionally, the book covers essential aspects like functional programming, concurrency, and multithreading, and designing concurrent data structures. It also offers insights into designing world-ready applications, incorporating design patterns, and addressing networking and security concerns. Finally, it adds to your knowledge of debugging and testing and large-scale application design.
With Expert C++ as your guide, you'll be empowered to push the boundaries of your C++ expertise and unlock new possibilities in software development.
What you will learn
Go beyond the basics to explore advanced C++ programming techniques
Develop proficiency in advanced data structures and algorithm design with C++17 and C++20
Implement best practices and design patterns to build scalable C++ applications
Master C++ for machine learning, data science, and data analysis framework design
Design world-ready applications, incorporating networking and security considerations
Strengthen your understanding of C++ concurrency, multithreading, and optimizing performance with concurrent data structures
Who this book is for
This book will empower experienced C++ developers to achieve advanced proficiency, enabling them to build professional-grade applications with the latest features of C++17 and C++20. If you're an aspiring software engineer or computer science student, you'll able to master advanced C++ programming techniques through real-world applications that will prepare you for complex projects and real-world challenges.
Table of contents
1. Building C++Applications
2. Beyond Object-Oriented Programming
3. Understanding C++ Templates
4. Template Metaprogramming
5. Memory Management andSmart Pointers
6. Digging into Data Structures: STL Containers
7. Advanced Data Structures with C++
8. Functional Programming
9. Concurrency and Multithreading
10. Designing Concurrent Data Structures
11. Designing World-Ready Applications
12. Incorporating Design Patterns in C++ Applications
13. Networking andSecurity
14. Aggregates, Entities & Value Objects
15. Large-Scale C++ Application Design
16. Understanding and Using C++in Machine Learning Tasks
17. Using C++in Data Science
18. Designing and Implementing a Data Analysis Framework
About the Author
Marcelo Guerra Hahn, With over 18 years of experience in software development and data analysis, Marcelo Guerra Hahn is a seasoned expert in C++, C#, and Azure. As an Engineering Manager at Microsoft C++ Team and former leader of SoundCommerce's engineering team, Marcelo's passion for data and informed decision-making shines through. He shares his knowledge as a lecturer at esteemed institutions like Lake Washington Institute of Technology and University of Washington. Through this book, Marcelo aims to empower readers with advanced C++ techniques, honed by real-world experience, to become proficient programmers and skilled data analysts.
Araks Tigranyan is a passionate software engineer at Critical Techworks, with an unwavering love for the world of programming, particularly in C++. Her dedication to crafting efficient and innovative solutions reflects her genuine passion for coding. Committed to excellence and driven by curiosity, Araks continuously explores new technologies, going above and beyond to deliver exceptional work. Beyond programming, Araks finds solace in sports, with football holding a special place in her heart. As an author, Araks aspires to share her profound expertise in C++ and inspire readers to embark on their programming journeys.
John Asatryan, the Head of Code Republic Lab at Picsart Academy, seamlessly blends his academic background in International Economic Relations from the Armenian State University of Economics with his ventures in technology and education. Driven by a genuine passion for coding, John's commitment to empowering aspiring developers is evident in his expertise in the field. His unwavering dedication to bridging the gap between education and technology inspires others to pursue their coding dreams.
Vardan Grigoryan is a senior backend engineer and C++ developer with more than 9 years of experience. Vardan started his career as a C++ developer and then moved to the world of server-side backend development. While being involved in designing scalable backend architectures, he always tries to incorporate the use of C++ in critical sections that require the fastest execution time. Vardan loves tackling computer systems and program structures on a deeper level. He believes that true excellence in programming can be achieved by means of a detailed analysis of existing solutions and by designing complex systems.
Shunguang Wu is a senior professional staff at Johns Hopkins University Applied Physics Laboratory, and received his PhDs in theoretical physics and electrical engineering from Northwestern University (China) and Wright State University (USA), respectively. He published about 50 reviewed journal papers in the area of nonlinear dynamics, statistical signal processing and computer vision in his early career. His professional C++ experience started with teaching undergraduate courses in the late 1990s. Since then he has been designing and developing lots of R&D and end-user application software using C++ in world-class academic and industrial laboratories. These projects span both the Windows and Linux platforms.