Expert C++ Programming
- Authors
- Galowicz, Jacek & Posch, Maya & Swaminathan, Jeganathan
- Publisher
- Packt Publishing
- Tags
- c++
- ISBN
- 9781788831390
- Date
- 2018-04-11T00:00:00+00:00
- Size
- 38.85 MB
- Lang
- en
Developing expert level application development skills with C++
About This BookTake advantage of the myriad of features and possibilities that C++ offers to build real-world applicationsDelve into the fundamentals of multithreading and concurrency and find out how to implement themLearn the latest features of C++ and how to write better code by using the Standard LibraryWho This Book Is ForThis course is for intermediate to advanced level C++ developers who want to get the most out of C++ to build concurrent and scalable application.
What You Will LearnWrite modular C++ applications in terms of the existing and newly introduced featuresIdentify code-smells, clean up, and refactor legacy C++ applicationsLeverage the possibilities provided by Cucumber and Google Test/Mock to automate test casesDeep dive into the details of the how various operating systems currently implement multithreadingChoose the best multithreading APIs when designing a new applicationExplore the use of mutexes, spin-locks, and other synchronization concepts and see how to safely pass data between threadsWork with strings the STL way instead of handcrafting C-style codeUnderstand standard support classes for concurrency and synchronization, and how to put them to workUse the filesystem library addition available with the C++17 STLIn DetailC++ has come a long way and has now been adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications. The C++ 17 release will change the way developers write code, and this course will help you master your developing skills with C++. With real-world, practical examples explaining each concept, the course is divided into three modules where will begin by introducing you to the latest features in C++ 17. It encourages clean code practices in C++ in general and demonstrates the GUI app-development options in C++. You’ll get tips on avoiding memory leaks using smart-pointers.
In the next module, you’ll see how multi-threaded programming can help you achieve concurrency in your applications. We start with a brief introduction to the fundamentals of multithreading and concurrency concepts. We then take an in-depth look at how these concepts work at the hardware-level as well as how both operating systems and frameworks use these low-level functions.
You will learn about the native multithreading and concurrency support available in C++ since the 2011 revision, synchronization and communication between threads, debugging concurrent C++ applications, and the best programming practices in C++.
Moving on, you’ll get an in-depth understanding of the C++ Standard Template Library. Where we show implementation-specific, problem-solution approach that will help you quickly overcome hurdles. You will learn the core STL concepts, such as containers, algorithms, utility classes, lambda expressions, iterators, and more while working on practical real-world recipes. These recipes will help you get the most from the STL and show you how to program in a better way.
Jeganathan Swaminathan : Mastering C++ Programming
Maya Posch : Mastering C++ Multithreading
Jacek Galowicz : C++17 STL Cookbook
Style and approachThis is a developer's guide to mastering multithreadded application development in C++
Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.