1. Tổng quan "The Chain of Responsibility pattern establishes a chain within a system, so that a message can either be handled at the level where it is first received, or be directed to an object that can handle it." - Gang of Four Chain of Responsibility là một design pattern thuộc nhóm Behavioral Pattern. Behavioral Pattern bao gồm những pattern quan tâm đến hành vi của đối tượng, sự giao tiếp giữa các đối tượng với nhau. Ý tưởng...
Design Pattern Design Principle C# Behavioral Design Pattern Chain of Responsibility Pattern1. Giới thiệu State Pattern là một mẫu thiết kế thuộc nhóm Behavioral Pattern – những mẫu thiết kế xác định các mẫu giao tiếp chung giữa các object. Từ đó các mẫu này tăng tính linh hoạt trong việc thực hiện việc giao tiếp giữa các object. State Pattern là một mẫu thiết kế hành vi cho phép một object thay đổi hành vi của nó khi trạng thái bên trong của nó thay đổi. Nó là một trong những mẫu...
Design Pattern Design Patterns Behavioral Design Pattern Behavioral state design pattern1. Giới thiệu Phân loại: Behavior Pattern Bí danh: Policy Mục đích: Định nghĩa một tập hợp các thuật toán giống nhau, encapsulate chúng và khiến chúng có thể thay thế cho nhau. Strategy làm cho phần thuật toán độc lập khỏi client sử dụng nó. Tần suất sử dụng: khá cao 2. Mục đích ra đời Giả sử chúng ta cần xây dựng một app giúp tìm đường đi trong thành phố. Ban đầu app chỉ giúp những...
Design Pattern Behavioral Design Pattern Strategy Pattern Strategy Strategy Design Pattern1. Giới thiệu Phân loại: Behavior Pattern Mục đích: Template Method xây dựng một bộ khung thuật toán trong một toán tử, để lại việc định nghĩa một vài bước cho các subclass mà không làm thay đổi cấu trúc chung của thuật toán. Tần suất sử dụng: trung bình 2. Mục đích ra đời Problem Giả sử khi tạo một ứng dụng khai thác dữ liệu để phân tích các tài liệu của công ty. Người dùng cung cấp...
Design Patterns Behavioral Design Pattern Behavioral template method1. Giới thiệu Visitor là một mẫu thiết kế thuộc nhóm Behavior Pattern Visitor còn được biết đến như là Double dispatch Cho phép định nghĩa các operation trên một tập hợp các đối tượng không đồng nhất về kiểu mà không làm thay đổi định nghĩa về lớp của các đối tượng đó. Cho phép tách các thuật toán khỏi các đối tượng mà chúng hoạt động. Giúp phục hồi lại kiểu dữ liệu bị mất...
Design Pattern Design Patterns Behavioral Design Pattern Behavioral Visitor Pattern1. Giới thiệu Command (hay còn gọi là Action, Transaction) là một mẫu thiết kế thuộc nhóm hành vi (Behavioral Pattern). Command pattern là một pattern cho phép bạn chuyển đổi một request thành một object độc lập chứa tất cả thông tin về request. Việc chuyển đổi này cho phép bạn tham số hoá các methods với các yêu cầu khác nhau như log, queue (undo/redo), transtraction. Khái niệm Command Object giống như một...
Design Pattern command Behavioral Design Pattern Behavioral command pattern1. Giới thiệu Phân loại: Behavior Pattern Mục đích: Memento cho phép người lưu trữ và hồi phục các phiên bản cũ của 1 object mà không can thiệp vào nội dung của object đó. 2. Mục đích ra đời Problem Tưởng tượng bạn đang tạo 1 text editor. Bao gồm các chức năng như chỉnh sửa text, format text, thêm ảnh, v.v.. Để phát triển thêm app, bạn quyết định cho phép người dùng undo và redo bất kỳ thao tác...
Design Pattern Design Patterns Behavioral Design Pattern Behavioral Memento Pattern1. Giới thiệu Mediator Pattern là một trong những Pattern thuộc nhóm hành vi (Behavior Pattern). Mediator có nghĩa là người trung gian. Pattern này nói rằng “Định nghĩa một đối tượng gói gọn cách một tập hợp các đối tượng tương tác. Mediator thúc đẩy sự khớp nối lỏng lẻo (loose coupling) bằng cách ngăn không cho các đối tượng đề cập đến nhau một cách rõ ràng và nó cho phép bạn thay đổi sự...
Design Pattern Design Patterns Behavioral Design Pattern Behavioral Mediator1. Giới thiệu Chain of Responsibility là một mẫu thiết kế thuộc nhóm hành vi (Behavioral Pattern). Mục đích: cho phép một đối tượng gửi một yêu cầu nhưng không biết đối tượng nào sẽ nhận và xử lý nó. Điều này được thực hiện bằng cách kết nối các đối tượng nhận yêu cầu thành một chuỗi (chain) và gửi yêu cầu theo chuỗi đó cho đến khi có một đối tượng xử lý nó. Chain of...
Design Patterns Behavioral Design Pattern Chain of Responsibility Pattern Chain of Responsibility Behavioral1. Giới thiệu Iterator hay còn gọi là Cursor là một mẫu thiết kế thuộc nhóm hành vi (Behavioral Pattern). Iterator được thiết kế cho phép xử lý nhiều loại tập hợp khác nhau bằng cách truy cập những phần tử của tập hợp với cùng một phương pháp, cùng một cách thức định sẵn, mà không cần phải hiểu rõ về những chi tiết bên trong của những tập hợp này. Nói cách khác, một Iterator được...
Design Pattern Design Patterns Behavioral Design Pattern Iterator Pattern Iterator