The Modern C++ Challenge: Become an expert programmer by solving real-world problems
โ Scribed by Marius Bancila
- Publisher
- Packt Publishing
- Year
- 2018
- Tongue
- English
- Leaves
- 328
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
Test your C++ programming skills by solving real-world programming problems covered in the book
Key Features
- Solve a variety of real-world programming and logic problems by leveraging the power of C++17
- Test your skills in using language features, algorithms, data structures, design patterns, and more
- Explore areas such as cryptography, communication, and image handling in C++
Book Description
C++ is one of the most widely-used programming languages and has applications in a variety of fields, such as gaming, GUI programming, and operating systems, to name a few. Through the years, C++ has evolved into (and remains) one of the top choices for software developers worldwide. This book will show you some notable C++ features and how to implement them to meet your application needs. Each problem is unique and doesn't just test your knowledge of the language; it tests your ability to think out of the box and come up with the best solutions. With varying levels of difficulty, you'll be faced with a wide variety of challenges. And in case you're stumped, you don't have to worry: we've got the best solutions to the problems in the book. So are you up for the challenge?
What you will learn
- Serialize and deserialize JSON and XML data
- Perform encryption and signing to facilitate secure communication between parties
- Embed and use SQLite databases in your applications
- Use threads and asynchronous functions to implement generic purpose parallel algorithms
- Compress and decompress files to/from a ZIP archive
- Implement data structures such as circular buffer and priority queue
- Implement general purpose algorithms as well as algorithms that solve specific problems
- Create client-server applications that communicate over TCP/IP
- Consume HTTP REST services
- Use design patterns to solve real-world problems
Who This Book Is For
This book will appeal to C++ developers of all levels. There's a challenge inside for everyone.
Table of Contents
- Math Problems
- Language Features
- Strings and Regular Expressions
- Streams and Filesystems
- Date and Time
- Algorithms and Data Structures
- Concurrency
- Design Patterns
- Data Serialization
- Archives, Images, and Databases
- Cryptography
- Networking and Services
โฆ Subjects
Programming;APIs & Operating Environments;Algorithms;Apple Programming;Cross-platform Development;Functional;Game Programming;Graphics & Multimedia;Introductory & Beginning;Languages & Tools;Microsoft Programming;Mobile Apps;Parallel Programming;Software Design, Testing & Engineering;Web Programming;Computers & Technology;C++;C & C++;Programming Languages;Computers & Technology
๐ SIMILAR VOLUMES
<p><b>Learn advanced C# concepts and techniques such as building caches, cryptography, and parallel programming by solving interesting programming challenges</b></p> Key Features <li>Gain useful insights on advanced C# programming topics and APIs </li> <li>Use locking and cached values to solve para
Stay on top of new Java features and find efficient solutions for your programming woes Key Features Solve Java programming challenges and get interview-ready with the power of modern Java 20 Test your Java skills using language features, algorithms, data structures, and design patterns Explor
Stay on top of the new Java features (up to JDK 21) and find efficient solutions for your programming woes. With over 250 problems and solutions, you'll learn new ways to deal with real-world coding tasks and answers to common interview questions. Key Features โข Solve Java programming challenges
<p><strong>Develop your coding skills by exploring Java concepts and techniques such as Strings, Objects and Types, Data Structures and Algorithms, Concurrency, and Functional programming</strong></p> <h4>Key Features</h4> <ul><li>Solve Java programming challenges and get interview-ready by using th
The super-fast evolution of the JDK between versions 8 and 12 has increased the learning curve of modern Java, therefore has increased the time needed for placing developers in the Plateau of Productivity. Its new features and concepts can be adopted to solve a variety of modern-day problems. This b