We may earn an affiliate commission when you visit our partners.
Torben Boeck Jensen

This course will teach you how to apply Behavioral Design Patterns in your C++ applications.

Read more

This course will teach you how to apply Behavioral Design Patterns in your C++ applications.

Design patterns are a very useful part of a developer’s toolbox. They provide you with general solutions to commonplace problems within software development. Once mastered, design patterns can help you solve a variety of different problems in a standardized, reusable way. In this course, Design Patterns in C++: Behavioral - Chain of Responsibility to Memento, you’ll learn how to apply the Chain of Responsibility, Command, Interpreter, Iterator, Mediator, and Memento design patterns in your C++ applications. First, you’ll explore the problems that the different design patterns covered in this course are used to solve. Next, you’ll discover how to apply relevant design patterns to these problems. Finally, you’ll learn how to apply these design patterns in your own code using C++. When you’re finished with this course, you’ll have the skills and knowledge of the behavioral design pattern covered in this course needed to apply them in your application development.

Enroll now

Here's a deal for you

We found an offer that may be relevant to this course.
Save money when you learn. All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Syllabus

Course Overview
Applying the Chain of Responsibility Pattern
Applying the Command Pattern
Applying the Interpreter Pattern
Read more
Applying the Iterator Pattern
Applying the Mediator Pattern
Applying the Memento Pattern

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops knowledge and skills in behavioral design patterns that are core skills for software engineers
Provides a comprehensive study of six behavioral design patterns
Taught by Torben Boeck Jensen, an expert in software design patterns
Utilizes a mix of videos, readings, and discussions
Course is part of a series, which may indicate comprehensiveness and detail
Students are expected to have a basic understanding of C++., but this is not explicitly stated as a prerequisite

Save this course

Save Design Patterns in C++ 20: Behavioral - Chain of Responsibility to Memento to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Design Patterns in C++ 20: Behavioral - Chain of Responsibility to Memento with these activities:
Review C++ Fundamentals
Helps solidify fundamental C++ concepts and syntax in preparation for applying design patterns.
Show steps
  • Go over C++ syntax and data types.
  • Practice writing basic C++ programs.
  • Review object-oriented programming concepts in C++.
Connect with C++ Developers
Provides access to experienced professionals who can offer guidance and support throughout the learning journey.
Browse courses on Mentorship
Show steps
  • Attend online or offline C++ meetups.
  • Join C++-related forums and discussion groups.
  • Reach out to C++ developers on LinkedIn.
Follow Tutorials on Design Patterns
Provides supplemental guidance and examples for understanding and applying the behavioral design patterns covered in the course.
Browse courses on Design Patterns
Show steps
  • Search for tutorials on the Chain of Responsibility pattern.
  • Follow a tutorial and implement a simple example in C++.
  • Repeat for the Command, Interpreter, Iterator, Mediator, and Memento patterns.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Solve Design Pattern Problems
Strengthens problem-solving skills and reinforces the application of behavioral design patterns in real-world scenarios.
Browse courses on Design Patterns
Show steps
  • Find a set of design pattern problems.
  • Analyze the problem and identify the appropriate design pattern.
  • Implement the solution in C++.
  • Test and refine the solution.
Develop a C++ Application Using Design Patterns
Provides a hands-on experience in designing, implementing, and evaluating a software application using behavioral design patterns.
Browse courses on Design Patterns
Show steps
  • Choose a problem or project idea.
  • Design the application using appropriate design patterns.
  • Implement the application in C++.
  • Test and evaluate the application.
Write a Design Pattern Tutorial
Enhances understanding and communication skills by requiring students to explain and document the application of behavioral design patterns to a specific problem.
Browse courses on Design Patterns
Show steps
  • Choose a design pattern to write about.
  • Research the pattern and its applications.
  • Develop a step-by-step tutorial with code examples.
  • Proofread and edit the tutorial.
Participate in a Design Pattern Hackathon
Provides an immersive and competitive environment for applying and showcasing design pattern skills.
Browse courses on Design Patterns
Show steps
  • Register for a design pattern hackathon.
  • Form a team or work individually.
  • Develop a solution to a design pattern-related problem.
  • Present the solution and compete with other teams.

Career center

Learners who complete Design Patterns in C++ 20: Behavioral - Chain of Responsibility to Memento will develop knowledge and skills that may be useful to these careers:
Cloud Architect
Cloud Architects design, build, and maintain cloud-based systems. This course may be useful to aspiring Cloud Architects, as it provides foundational training in object-oriented programming with C++.
Software Engineer
Software Engineers apply engineering principles to the design, development, testing, deployment and maintenance of software systems. Training in C++ is helpful for those seeking to become Software Engineers. This course can give aspiring Software Engineers practical experience applying design patterns in C++ applications.
Data Architect
Data Architects design, build, and maintain data systems. This course may be useful to aspiring Data Architects, as it provides foundational training in object-oriented programming with C++.
Enterprise Architect
Enterprise Architects design, build, and maintain the technology infrastructure of an organization. This course may be useful to aspiring Enterprise Architects, as it provides foundational training in object-oriented programming with C++.
Mobile Applications Developer
Mobile Applications Developers design and develop mobile applications for smartphones and other mobile devices. Training in C++ can be helpful for those seeking to become Mobile Applications Developers. This course can give aspiring Mobile Applications Developers practical experience applying design patterns in C++ applications.
Web Applications Developer
Web Applications Developers design, create and maintain web applications. This course can help aspiring Web Applications Developers understand the principles of object-oriented programming using the C++ language. While this may not be as valuable as training dedicated to the development of web applications, it may help provide a solid foundation for further learning.
Software Architect
Software Architects design, implement, and maintain the overall architecture of software systems. They are responsible for ensuring that the system meets the business requirements and is scalable, reliable, and secure. This course may be useful for aspiring Software Architects, as it provides training in object-oriented programming principles using the C++ language.
Computer Programmer
Computer Programmers write and test computer code in an assortment of different programming languages. Training in object-oriented programming (C++ in particular) can be helpful for those seeking to become Computer Programmers. This course may be useful for those aspiring to become Computer Programmers, because it can provide a foundation in object-oriented programming principles.
Computer Systems Analyst
Computer Systems Analysts study an organization's current computer systems and procedures, and design and implement new systems that improve efficiency. Training in object-oriented programming, especially using C++, can be helpful for those seeking to become Computer Systems Analysts. This course may be useful for those aspiring to become Computer Systems Analysts, because it can provide a foundation in object-oriented programming principles.
Software Developer
Software Developers are responsible for designing, coding, debugging and testing computer applications that may be used in different industries. Practitioners may enjoy working in a fast-paced collaborative environment. The experience that learners can garner from applying the Chain of Responsibility, Command, Interpreter, Iterator, Mediator, and Memento design patterns into C++ applications, may be useful.
Database Administrator
Database Administrators are responsible for the installation, configuration, maintenance and performance of database management systems. This course can help aspiring Database Administrators understand the principles of object-oriented programming using the C++ language. While this may not be as valuable as training dedicated to the management of database systems, it may help provide a solid foundation for further learning.
IT Consultant
IT Consultants provide expert guidance to businesses on how to use information technology to meet their business goals. They may also help organizations to design, implement, and manage their IT systems. This course can prove useful to aspiring IT Consultants, by providing foundational training in object-oriented programming with C++.
Web Developer
Web Developers design and create websites. They are responsible for the look, functionality and maintenance of websites, as well as for implementing the website's features. Some Web Developers choose to specialize in front-end or back-end development. This course can help prepare aspiring Web Developers to work in back-end web development, with its focus on applying design patterns in C++ applications.
Data Scientist
Data Scientists use scientific methods, processes, algorithms and systems to extract knowledge and insights from data in various forms, both structured and unstructured. Training in object-oriented programming can be helpful for those seeking to become Data Scientists. This course may be useful for those aspiring to become Data Scientists, because it can provide a foundation in object-oriented programming principles.
Systems Analyst
Systems Analysts determine the needs of their organization's computer systems, and may participate in the design, implementation, and maintenance of those systems. This course can assist aspiring Systems Analysts in understanding object-oriented programming in C++. While this course does not provide comprehensive training for the role, it can help to build a foundation for further learning.

Reading list

We've selected 13 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Design Patterns in C++ 20: Behavioral - Chain of Responsibility to Memento.
Must-read for C++ developers. It provides patterns and best practices for designing and developing modular, flexible, and reusable software in C++. It uses C++11 and provides valuable C++-specific insights.
Is considered the 'Gang of Four' book and is more commonly known by its cover, which features a picture of four people in a hot tub. This book is considered the canonical book on design patterns and is an industry standard used by many software professionals. It’s a good reference book that provides examples in various programming languages.
Provides comprehensive coverage of C++ templates. It valuable resource for developers who want to learn more about this advanced C++ topic.
Is considered one of the foundational books on object-oriented design and classic in the industry. It provides a comprehensive overview of object-oriented design and analysis.
Is more comprehensive in its coverage than some of the other books on design patterns. It is one of three volumes that cover architectural software patterns and provides both reusable design components as well as patterns to interconnect these components.
Provides a comprehensive overview of design patterns. It’s a valuable resource for developers who are new to design patterns or who want to learn more about them.
Provides a comprehensive overview of agile software development principles, patterns, and practices. It’s a valuable resource for developers who are new to agile or who want to learn more about it.
Provides a set of principles and practices for writing clean code. It’s a valuable resource for developers who are looking to improve the quality of their code.
Provides a more introductory, easy-to-read explanation of the design patterns commonly used in software development. This book is one of the Head First series published by O’Reilly and uses a fun, interactive learning style.
Provides a collection of challenging C++ puzzles and problems. It’s a valuable resource for developers looking to improve their C++ skills.
Provides a set of coding standards and best practices for C++ developers. It’s a valuable resource for teams looking to improve their code quality.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Design Patterns in C++ 20: Behavioral - Chain of Responsibility to Memento.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser