Khác biệt giữa bản sửa đổi của “Memento pattern”

Nội dung được xóa Nội dung được thêm vào
n chú thích trong bài using AWB
n add category, replaced: ( → ( (3), ) → ) (2) using AWB
Dòng 27:
 
5. Mô tả các lớp:
• Memento( SolverState):
Lưu trữ trạng thái trong của đối tượng Originator. Memento có thể lưu trữ nhiều hay ít trạng thái bên trong của đối tượng tuỳ theo nhu cầu của Originator.
Bảo vệ chống lại những truy cập từ những đối tượng không phải là Originator. Memento có hai giao diện: Caretaker nhìn thấy giao diện hẹp của Memento- nó chỉ có thể truyền Memento cho đối tượng khác. Ngược lại, Originator nhìn thấy giao diện rộng nên nó có thể truy cập đến tất cả những dữ liệu cần thiết để khôi phục lại trạng thái trước của nó. Một cách lí tưởng, chỉ có Originator tạo ra Memento là được phép truy cập đến trạng thái trong của Memento.
• Originator( ConstraintSolver):
Tạo một Memento chứa ảnh về trạng thái trong của nó.
Sử dụng Memento để lưu trữ trạng thái trong của nó.
• Caretaker( undo mechanism):
Có trách nhiệm cho việc bảo vệ Memento.
Không bao giờ được thao tác hoặc kiểm tra nội dung của Memento.
Dòng 110:
void AddConstraint(
Graphic* startConnection, Graphic* endConnection
);
void RemoveConstraint(
Graphic* startConnection, Graphic* endConnection
);
ConstraintSolverMemento* CreateMemento();