C++ Best Practises and Design Patterns Training

Nivå: Intermediate
Snittbetyg: 0/5 0/5 Based on 0 Reviews

The ability to leverage the work of others, avoid pitfalls, and apply proven idioms and patterns can greatly improve the effectiveness of programming efforts. In this C++ Best Practises and Design Patterns course, you learn to increase productivity by combining tools, idioms, syntax, and libraries to produce industrial-strength C++ code. Numerous hands-on exercises provide real-world experience in developing high-quality C++.


  • After-course instructor coaching benefit
  • Learning Tree end-of-course exam included
  • After-course computing sandbox included

Du kommer lära dig att:

  • Design and implement efficient object-oriented solutions using C++
  • Improve code quality using design patterns
  • Modify a poorly structured application to increase flexibility, robustness, and efficiency
  • Build robust libraries using namespaces, templates, and exceptions

Välj den utbildningsform som passar dig bäst



  • Använd denna eller någon annan utbildning i ditt företag
  • Fullskalig programutveckling
  • Levereras när, var och hur du vill
  • Blandade utbildningsmodellerSkräddarsytt innehåll
  • Coaching av ett expertteam
View Details ›

Anpassa kurs och innehåll efter teamets behov

Kontakta oss

Utveckla dig och ditt team med anpassade eller öppna kurser alternativt e-learning

Learning Tree erbjuder kundanpassad utbildning hos er, öppna kurser i Stockholm, London eller Washington, möjlighet att delta via våra Anywhere centers (Malmö, Göteborg, Linköping, Stockholm eller Borlänge) eller olika former av e-learning med lärarstöd. Läs mer på www.learningtree.se/priser .


C++ Best Practises and Design Patterns Course Information

  • Requirements

    You should have a basic knowledge of C++ programming. You should understand the following concepts as implemented in C++:
    •  Classes and objects
    •  Inheritance
    • Polymorphism or virtual functions
    • Function overloading
    • Six months' full-time C++ programming experience

C++ Best Practises and Design Patterns Course Outline

  • Introduction to Object-Oriented Development

    OO fundamentals

    • Inheritance, encapsulation and polymorphism
    • Classes, objects, and attributes
    • Associations, messages and methods
    • Interfaces and abstract classes

    Using the Unified Modelling Language

    • Characteristics of UML
    • Mapping UML into C++

    Exploiting development tools

    • Automating the life cycle with CASE tools
    • Code generation and reverse engineering
    • Debuggers and browsers
  • Design Patterns

    Introducing design patterns

    • The motivation for design patterns
    • Categories of patterns: creational, behavioral, and structural
    • Describing design patterns

    Putting patterns to work

    • Synchronising multiple views with the Observer pattern
    • Handling recursive data structures with the Composite pattern
    • Minimising code duplication with the Template Method pattern
    • Managing object creation with the Singleton pattern
    • Decoupling object creation with Factory pattern
    • Separating algorithms from data structures with the Visitor pattern
  • Using the ISO Standard C++ Library

    The Standard Template Library (STL)

    • The structure of the STL
    • Declaring and populating sequence and associative containers
    • Accessing containers using iterators
    • Applying standard and user-supplied algorithms
    • Using function object and lambda expressions

    The iostream library

    • Basic input/output
    • Formatting textual output
    • Handling errors in input data
    • Wide character types and internationalization

    The thread library

    • Creating and managing threads
    • Handling exclusive access to shared data
  • Storage Management

    Managing memory

    • Recognising and reducing memory overhead
    • Preventing memory leaks with the unique_ptr and shared_ptr templates
    • Overloading operator new and operator delete
    • Writing and using smart pointers

    File storage

    • Preparing classes for simple file storage
    • Storing and retrieving objects using Boost serialisation libraries
  • Writing Better C++

    Increasing reusability

    • Avoiding name clashes using namespaces
    • Using templates for type-safe reusability

    Improving robustness and efficiency

    • Strengthening encapsulation by consistent and appropriate use of const
    • Sharing state between lightweight objects
    • Understanding r-value references and move semantics
  • Avoiding C++ Traps and Pitfalls

    Things you need to do — and why

    • Virtual destructors
    • Assignment operators and copy constructors

    Features to handle with care

    • Friends vs. public members
    • Runtime-type information vs. virtual member functions
    • Multiple and virtual inheritance

C++ Best Practises and Design Patterns Training FAQs

  • How can I bring this C++ Best Practises and Design Patterns course to my facility to train my team?

    Learning Tree provides Private Team Training that can save time and travel costs by training your entire team at once, at a convenient location of your choice. We handle all the details including instructor travel, tailored content, comprehensive course materials, shipping and equipment setup and teardown.

Questions about which training is right for you?

call 08-506 668 00

Why do we require your location?

It allows us to direct your request to the appropriate Customer Care team.

100% Satisfaction Guaranteed

Your Training Comes with a 100% Satisfaction Guarantee!*

*Partner-delivered courses may have different terms that apply. Ask for details.

Why do we require your location?

It allows us to direct your request to the appropriate Customer Care team.

Hur föredrar du att bli kontaktad:

Please Choose a Language

Canada - English

Canada - Français