Discover Classes. Earn 10% Rewards.

Advanced C++ for Experts - Design Patterns, STL is unfortunately unavailable

Thankfully we have 2 other Coding Classes for you to choose from. Check our top choices below or see all classes for more options.

Introduction to AI: Understanding and Using Artificial Intelligence

Colorado Free University See all classes by this school @ 7653 E 1st Pl, Denver, CO

Build a clear understanding of artificial intelligence and its growing impact on everyday life. Explore how AI works, along with its benefits, risks, and ethical challenges, while learning how to use AI tools safely and effectively. Build the confidence to evaluate AI systems and apply them thoughtfully at home and at work.

(20) Beginner 17 and older
$179
Attend
+1790 pts
Gift it!

Using AI in Adobe Photoshop

Colorado Free University See all classes by this school @ 7653 E 1st Pl, Denver, CO

Explore the latest creative capabilities of Adobe Photoshop in this workshop at Colorado Free University. You'll use built-in AI tools to assemble striking composite images, refine group shots, and experiment with playful, imaginative effects. Whether you're new to Photoshop or already comfortable with it, this class will help you stretch your creative range.

(20) All levels 18 and older
$254
Attend
+2540 pts
Gift it!
See all Coding classes Denver

Advanced C++ for Experts - Design Patterns, STL

Take your C++ skills to the next level with an intensive two-day course on Advanced C++ for Experts, focusing on Design Patterns and the STL. Offered by the respected Hartmann Software Group, this training will provide a solid introduction to Design Patterns and cover new topics in C++11/C++14. Prerequisites include a minimum of two years of C++ development experience.

  • Advanced
  • 18 and older
  • Earn 10% Rewards
  • Price Lock

    Secure your booking now and we'll match any price drop within 48 hours across all booking platforms, ensuring you never miss out on savings!

  • 1624 Market St, Denver, CO
  • 16 hours over 2 sessions

Start Dates (0) $1,890/person

No upcoming dates are currently available.

Book a Private Group Event

Booking this class for a group? Find great private group events

Or see all Coding Group Events

Explore group events and team building activities ranging from cooking, art, escape rooms, trivia, and more.

Class Description

Description

Advanced C++ for Experts - Design Patterns, STL, C++11/C++14 Training

This 2-day intensive Advanced C++ class is designed to coach the experienced C++ developer on enterprise system C++ coding and design standards. Students will be given a review of Polymorphism, Virtual Functions, Function Pointers and Multiple Inheritance. A solid introduction to Design Patterns follows. Once we have laid the groundwork, the training nicely dovetails into a thorough introduction to the STL and new topics in C++11/C++14.

Prerequisites:

Solid understanding of Object Oriented programming with a minimum of 2 years of C++ development experience.

Course

     Review

  • Templates
  • Function Templates
  • Class Templates
  • Function Objects
  • Design Pattern Overview
  • Objectives in Software Design/Module Design
  • Overview of Patterns
  • Qualities of a Pattern
  • Pattern Systems
  • Heuristics vs. Patterns

Principles of Object-Oriented Design

  • Overview of Principles
  • Single-Responsibility Principle (SRP)
  • Open-Closed Principle (OCP)
  • Tell vs. Ask
  • Command/Query Separation (CQS)
  • Composed Method
  • Combined Method
  • Liskov Substitution Principle (LSP)
  • Dependency Inversion Principle (DIP)
  • Interface Segregation Principle (ISP)
  • Law of Demeter

Catalog of GoF Patterns

  • Overview of GoF Patterns
  • Introduction to Creation Patterns
  • Factory Method
  • Abstract Factory
  • Builder
  • Prototype
  • Singleton
  • Introduction to Structural Patterns
  • Adapter
  • Decorator
  • Proxy
  • Facade
  • Composite
  • Flyweight
  • Bridge
  • Summary of Structural Patterns
  • Introduction to Behavioral Patterns
  • Chain of Responsibility
  • Iterator
  • Strategy
  • Template Method
  • Mediator
  • Observer
  • Memento
  • Command
  • State
  • Visitor
  • Interpreter
  •  Other Micro-Architecture and System Patterns
  • Object Pool
  • Worker Thread
  • Dynamic Linkage
  • Cache Management
  • Type Object
  • Extension Object
  • Smart Pointer (C++)
  • Session
  • Transaction

Advanced Polymorphism and Inheritance

  • Good Class Design
  • String Class
  • Public Inheritance
  • Public Inheritance Problems
  • Inheritance and Semantics
  • Private Inheritance
  • Composition
  • Composition vs. Private Inheritance
  • Templates vs. Inheritance
  • Protected Inheritance
  • Implementation Encapsulation
  • Interface Inheritance

   Runtime Type Information

  • Runtime Type and Polymorphism
  • type_info Class
  • typeid Operator
  • Compiler Options
  • Safe Pointer Conversions
  • Dynamic Cast
  • New C++ Style Casts
  • Static Cast
  • Reinterpret Cast
  • Const Cast
  • Inheritance Hierarchies and Multiple Inheritance
  • Class Hierarchy in Smalltalk
  • Smalltalk Class Hierarchy (Simplified)
  • Collection Classers
  • Multiple Inheritance Solution
  • Basic Derivation
  • Ambiguities in Multiple Inheritance
  • Resolving Ambiguity
  • Duplicate Subobjects
  • Virtual Base Classes

An Overview of Templates

  • Templates
  • Overloading Functions
  • Template Functions
  • Specializing a Template Function
  • Disambiguation under Specialization
  • Template Classes
  • An Array Template Class
  • Instantiating a Template Class Object
  • Friends of Template Classes
  • Templates with Multiple Type Parameters
  • Non Class-type Parameters for Template Classes
  • Comments Regarding Templates
  • Templates and Inheritance

    Overview of STL

  • Perspective
  • History and Evolution
  • New Features
  • The Standard Template Library
  • Generic Programming
  • Design Goals
  • Header Files
  • STL Components
  • Containers
  • Algorithms
  • Iterators
  • Compiling STL Code

 Examples from STL

  • vector
  • Vector.cpp
  • list
  • List.cpp
  • map
  • Map.cpp
  • set
  • Set.cpp
  • multiset
  • Multiset.cpp
  • find
  • FindVector.cpp
  • find list
  • merge
  • Overriding the Default Comparison
  • Iterators
  • Iterators.cpp
  • Functions
  • Functions.cpp
  • Function Objects
  • FunctionObject.cpp

    STL Containers

  • Vectors
  • Vector.cpp
  • Vector Operations
  • Typedefs
  • Deques
  • deque as Stack
  • deque Functionality
  • Lists
  • Generic Programming
  • Tradeoff with Lists
  • List Memory Allocation
  • list Functionality
  • Associate Containers
  • Sets
  • Sets with User Defined Objects
  • Multisets (Bags)
  • Maps
  • Multimaps

    STL Iterators

  • Pointers
  • Template Version
  • String Version
  • A Generalization of Pointers
  • STL Iterators
  • Input Iterators
  • Output Iterators
  • Forward Iterators
  • Bidirectional Iterators
  • Random Access Iterators

  C++11/C++14 Highlights

  • Range-based for-loops
  • RValues and move semantics
  • Initializer lists
  • Variadic Templates
  • Lambda Foundations
  • Generic lambdas
  • Extended capture
  • Lambda Iterator concept
  • Lambda Containers
  • Lambda Functionsics:

Refund Policy

To cancel or reschedule your registrations without penalty or charge, please notify us at [email protected] 15 business days or more before the first day of my class.

In any event where a customer wants to cancel their enrollment and is eligible for a full refund, a 5% processing fee will be deducted from the refund amount.

In the event that an instructor or the school needs to cancel at the last minute, students will receive a refund less a 5% non-refundable registration fee.

Similar Classes

Benefits of Booking Through CourseHorse

  • Booking is safe. When you book with us your details are protected by a secure connection.
  • Lowest price guaranteed. Classes on CourseHorse are never marked up.
  • This class will earn you 18900 points. Earn 10% back in reward points!

Hartmann Software Group

The Hartmann Software Group is an IT training company that specializes in teaching complicated software development languages and technologies. They have a large course catalog, offer consulting services, and have created their own software products, all while being owned and operated by engineers with years of industry experience.

View school profile
Hartmann Software Group
Vetted by CourseHorse

A verified Denver educator.

Loading...