Hands-On Design Patterns with C++

This guide will amplify your knowledge and simplify your journey through the world of design patterns.

Access cutting-edge content as it's created

Want access to this book right now? Read as we develop it as part of our Early Access program. Click here to find out more about Early Access.

Code Files

Hands-On Design Patterns with C++

Fedor G Pikus

This guide will amplify your knowledge and simplify your journey through the world of design patterns.

Access cutting-edge content as it's created

Want access to this book right now? Read as we develop it as part of our Early Access program. Click here to find out more about Early Access.

Packt Subscription
FREE
$9.99/m after trial
Early Access eBook
$28.00
RRP $39.99
Save 29%
Pre-Order Print
$49.99
RRP $49.99
What do I get with a Packt subscription?
  • Exclusive monthly discount - no contract
  • Unlimited access to entire Packt library of 6500+ eBooks and Videos
  • 120 new titles added every month, on new and emerging tech
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the subscription reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the subscription reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the subscription reader
$0.00
$28.00
$49.99
$0 p/m after trial
RRP $39.99
RRP $49.99
Subscription
Early Access eBook
Pre-Order Print
Subscribe Now

Frequently bought together


Hands-On Design Patterns with C++ Book Cover
Hands-On Design Patterns with C++
$ 39.99
$ 28.00
The Modern C++ Challenge Book Cover
The Modern C++ Challenge
$ 27.99
$ 19.60
Buy 2 for $47.60
Save $20.38
Add to Cart

Book Details

ISBN 139781788832564
Paperback532 pages

Book Description

C++ is a general-purpose programming language built with a bias towards embedded programming and systems programming. Design patterns are, in essence, a library of reusable components, only for software architecture, not for a concrete implementation.

With this book, we will teach you how to recognize and apply some of the most common C++ design patterns and idioms. We will focus on the design patterns that naturally lend themselves to the needs of a C++ programmer and fit well with the language’s features. Armed with the knowledge of these patterns, you will spend less time searching for a solution to a common problem and be familiar with the solutions developed from experience, their advantages and drawbacks. The other use of design patterns is as a concise and efficient way to communicate. The patterns are familiar and instantly recognizable solutions to specific problems; with its use, sometimes with a single line of code, we can convey a considerable amount of information. The code speaks: "this is the problem we are facing, these are additional considerations that are most important in our case, and, thus, the following well-known solution was chosen."

By the end of this book, you will have gained a comprehensive understanding of the Design Patterns to create robust, reusable and easily maintainable apps.

Table of Contents

Chapter 1: An Introduction to Inheritance and Polymorphism
Chapter 2: Function Templates
Chapter 3: Class Templates
Chapter 4: Swap
Chapter 6: TBD - OOP Idiom
Chapter 7: Type Erasure
Chapter 8: SFINAE and Overload Resolution Management
Chapter 9: Classic Patterns for Object-Oriented Designs
Chapter 11: Friend Factory
Chapter 12: Virtual Constructors and Factories
Chapter 14: Template Method Pattern and Non-Virtual Idiom
Chapter 15: Curiously Recurring Template Pattern
Chapter 16: Mixin
Chapter 17: Scopeguard
Chapter 18: Serialization/Deserialization and Virtual Template
Chapter 19: Policy-Based Design
Chapter 20: Policy-Based Design, Inside-Out
Chapter 21: Typelist and Typemap
Chapter 22: Visitor and Multiple Dispatch

What You Will Learn

  • Recognize some of the most common design patterns used in C++, and what additional information is expressed by their use in context.
  • Understand how to use C++ generic programming to solve some of the most common design problems.
  • Explore the most powerful C++ idioms, their strengths, and drawbacks.
  • Rediscover some of the most popular C++ idioms, such as Resource Acquisition Is Initialization, and learn the new ways they can be used together with generic programming.
  • Understand the impact of different design and implementation choices on the program performance, and how to write well-designed and readable programs without sacrificing performance.

Authors

Table of Contents

Chapter 1: An Introduction to Inheritance and Polymorphism
Chapter 2: Function Templates
Chapter 3: Class Templates
Chapter 4: Swap
Chapter 6: TBD - OOP Idiom
Chapter 7: Type Erasure
Chapter 8: SFINAE and Overload Resolution Management
Chapter 9: Classic Patterns for Object-Oriented Designs
Chapter 11: Friend Factory
Chapter 12: Virtual Constructors and Factories
Chapter 14: Template Method Pattern and Non-Virtual Idiom
Chapter 15: Curiously Recurring Template Pattern
Chapter 16: Mixin
Chapter 17: Scopeguard
Chapter 18: Serialization/Deserialization and Virtual Template
Chapter 19: Policy-Based Design
Chapter 20: Policy-Based Design, Inside-Out
Chapter 21: Typelist and Typemap
Chapter 22: Visitor and Multiple Dispatch

Book Details

ISBN 139781788832564
Paperback532 pages
Read More

Read More Reviews

Recommended for You

The Modern C++ Challenge Book Cover
The Modern C++ Challenge
$ 27.99
$ 19.60
Hands-On System Programming with C++ Book Cover
Hands-On System Programming with C++
$ 39.99
$ 28.00
Hands-On System Programming with Linux Book Cover
Hands-On System Programming with Linux
$ 39.99
$ 28.00
Mastering Qt 5 - Second Edition Book Cover
Mastering Qt 5 - Second Edition
$ 35.99
$ 25.20
C++ Data Structures and Algorithms Book Cover
C++ Data Structures and Algorithms
$ 35.99
$ 25.20
Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA Book Cover
Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA
$ 39.99
$ 28.00