Ưu đãi trong tuần: Nhập mã UD50 giảm 50k cho đơn từ 300k!
Trang chủ
Menu

Design Patterns in Modern C++

Design Patterns trong C++ Hiện Đại

Design Patterns trong C++ Hiện Đại

Khám phá cách triển khai hiện đại của các mẫu thiết kế với C++

4.5
(7,478 đánh giá)
46,660 học viên
Giảng viên
Dmitri Nesteruk
Phụ đề Việt chất lượng cao Phụ đề tiếng Anh Bán chạy Đánh giá cao
50.000đ 589.000đ -92%
✓ Xem giỏ hàng và thanh toán
Bao gồm phụ đề tiếng Việt, tiếng Anh
12.5 giờ video
129 bài giảng
21 bài quiz
21 bài coding
Truy cập vĩnh viễn
Học trên mọi thiết bị
Cập nhật: 17/03/2026

Bạn sẽ học được gì

Nhận biết và áp dụng các mẫu thiết kế
Tái cấu trúc thiết kế hiện có để sử dụng các mẫu thiết kế
Đánh giá tính phù hợp và khả năng ứng dụng của các mẫu thiết kế
Học cách sử dụng các khía cạnh khác nhau của C++ Hiện Đại

Yêu cầu

Hiểu biết tốt về C++
Nắm được các tính năng của C++ Hiện Đại (11/14/17/...)
Hiểu về Lập trình Hướng Đối tượng (đóng gói, đa hình, kế thừa)

Đối tượng phù hợp

Lập trình viên C++ từ mới bắt đầu đến có kinh nghiệm
Nhà phát triển quan tâm đến cách triển khai các mẫu thiết kế
Chuyên gia khoa học máy tính

Nội dung khóa học

25 phần • 129 bài giảng
1 Giới thiệu
1 Tổng quan
2 Nguyên tắc Đơn Trách nhiệm
3 Nguyên tắc Đóng-Mở
4 Nguyên tắc Thay thế Liskov
5 Nguyên tắc Phân tách Giao diện
6 Nguyên tắc Đảo ngược Phụ thuộc
7 Tóm tắt
1 Phân loại Gamma
2 Tổng quan
3 Trường hợp không dùng Builder
4 Builder
5 Builder Linh hoạt
6 Builder theo phong cách Groovy
7 Các khía cạnh của Builder
8 Tóm tắt
1 Tổng quan
2 Ví dụ về Point
3 Phương thức Factory
4 Factory
5 Factory Nội bộ
6 Factory Trừu tượng
7 Factory Hàm
8 Tóm tắt
1 Tổng quan
2 Lưu trữ Bản ghi
3 Prototype
4 Factory Prototype
5 Prototype qua Tuần tự hóa
6 Tóm tắt
1 Tổng quan
2 Triển khai Singleton
3 Vấn đề về Khả năng Kiểm thử
4 Singleton trong Dependency Injection
5 Vòng đời Singleton trong DI Container
6 Monostate
7 Multiton
8 Tóm tắt
1 Tổng quan
2 Demo Vector/Raster
3 Bộ nhớ đệm Adapter
4 Tóm tắt
1 Tổng quan
2 Pimpl Idiom
3 Pimpl Đóng gói
4 Triển khai Bridge
5 Tóm tắt
1 Tổng quan
2 Hình học
3 Mạng Nơ-ron
4 Thuộc tính Hỗ trợ Mảng
5 Tóm tắt
1 Tổng quan
2 Decorator Động
3 Decorator Tĩnh
4 Decorator Hàm
5 Tóm tắt
1 Tổng quan
2 Façade
3 Tóm tắt
1 Tổng quan
2 Flyweight Thủ công
3 Boost.Flyweight
4 Định dạng Văn bản
5 Tóm tắt
1 Tổng quan
2 Con trỏ Thông minh
3 Proxy Thuộc tính
4 Proxy Ảo
5 Proxy Giao tiếp
6 Proxy vs Decorator
7 Tóm tắt
1 Tổng quan
2 Chuỗi Con trỏ
3 Chuỗi Broker
4 Tóm tắt
1 Tổng quan
2 Command
3 Hoàn tác Thao tác
4 Command Tổng hợp (Macro)
5 Tóm tắt
1 Tổng quan
2 Interpreter Thủ công: Phân tích Từ vựng
3 Interpreter Thủ công: Phân tích Cú pháp
4 Xây dựng Bộ phân tích với Boost.Spirit
5 Tóm tắt
1 Tổng quan
2 Iterator trong Thư viện Chuẩn
3 Iterator Cây Nhị phân
4 Iterator Cây với Coroutines
5 Boost Iterator Façade
6 Tóm tắt
1 Tổng quan
2 Phòng Chat
3 Broker Sự kiện
4 Tóm tắt
1 Tổng quan
2 Memento
3 Hoàn tác và Làm lại
4 Memento Tự động
5 Tóm tắt
1 Tổng quan
2 Observer
3 Observable
4 Observable với Boost.Signals
5 Vấn đề Phụ thuộc
6 An toàn Luồng và Tính Tái nhập
7 Tóm tắt
1 Tổng quan
2 Triển khai State Cổ điển
3 Máy trạng thái Thủ công
4 Máy trạng thái với Boost.MSM
5 Tóm tắt
1 Tổng quan
2 Strategy Động
3 Strategy Tĩnh
4 Tóm tắt
1 Tổng quan
2 Template Method
3 Tóm tắt
1 Tổng quan
2 Visitor Xâm nhập
3 Visitor Phản chiếu
4 Visitor Cổ điển (Phân phối Kép)
5 Visitor Không chu kỳ
6 Đa phương thức
7 Variant và std::visit
8 Tóm tắt
1 Kết thúc Khóa học

Giới thiệu khóa học

Course Overview

This course provides a comprehensive overview of Design Patterns in Modern C++ from a practical perspective. This course in particular covers patterns with the use of:

  • The latest versions of the C++ programming language
  • Use of modern programming approaches: dependency injection, use of coroutines, and more!
  • Use of modern developer tools such as CLion and ReSharper C++
  • Discussions of pattern variations and alternative approaches

This course provides an overview of all the Gang of Four (GoF) design patterns as outlined in their seminal book, together with modern-day variations, adjustments, discussions of intrinsic use of patterns in the language.

What are Design Patterns?

Design Patterns are reusable solutions to common programming problems. They were popularized with the 1994 book Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, John Vlissides, Ralph Johnson and Richard Helm (who are commonly known as a Gang of Four, hence the GoF acronym).

The original book was written using C++ and Smalltalk as examples, but since then, design patterns have been adapted to every programming language imaginable: Swift, C#, Java, PHP and even programming languages that aren't strictly object-oriented, such as JavaScript.

The appeal of design patterns is immortal: we see them in libraries, some of them are intrinsic in programming languages, and you probably use them on a daily basis even if you don't realize they are there.

What Patterns Does This Course Cover?

This course covers all the GoF design patterns. In fact, here's the full list of what is covered:

  • SOLID Design Principles: Single Responsibility Principle, Open-Closed Principle, Liskov Substitution Principle, Interface Segregation Principle and Dependency Inversion Principle
  • Creational Design Patterns: Builder, Factories (Factory Method and Abstract Factory), Prototype and Singleton
  • Structrural Design Patterns: Adapter, Bridge, Composite, Decorator, Façade, Flyweight and Proxy
  • Behavioral Design Patterns: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Null Object, Observer, State, Strategy, Template Method and Visitor

Who Is the Course For?

This course is for C++ developers who want to see not just textbook examples of design patterns, but also the different variations and tricks that can be applied to implement design patterns in a modern way.

Presentation Style

This course is presented as a (very large) series of live demonstrations being done in JetBrains CLion. Most demos are single-file, so you can download the file attached to the lesson and run it in CLion, XCode or another IDE of your choice (or just on the command line).

This course does not use UML class diagrams; all of demos are live coding.

Khóa học liên quan

Khám phá thêm các khoá học cùng chủ đề

Hiển thị tất cả khoá học C Plus Plus
Hiển thị tất cả khoá học Design Patterns
Hiển thị tất cả khoá học Object Oriented Programming
Hiển thị tất cả khoá học Software Development
Zalo
Tôi có thể tư vấn khoá học cho bạn 😊