1. Trang chủ
  2. » Công Nghệ Thông Tin

design pattern-Behavioral Tiếng Việt pdf

43 833 9

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 43
Dung lượng 1,4 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Thực hiện các thao tác nguyên thủy để thực hiện các bước đã chỉ ra trong các lớp con của thuật toán PrimitiveOperation trừu tượng, các thao tác này định nghĩa các lớp con cụ thể để thực

Trang 1

TÌM HIỂU : Design Pattern – Behavioral

Trang 2

Add your company slogan

gì ?

… ?

Đ nh Nghĩa ị

Design Pattern là tập các giải pháp  cho vấn đề phổ biến trong thiết kế  các hệ thống máy tính. Nó là các tài  liệu có giá trị cho người phát triển hệ  thống.

Design Pattern

Trang 3

Add your company slogan

History

 1977 ý tưởng lần đầu tiên được đưa ra dùng các mẫu

chuẩn trong thiết kế xây dựng và truyền thông

 1990 Design Pattern được đưa ra thảo luận rộng rãi.

 1994 hội nghị Pattern language of programming

design được tổ chức.

 2000 Evitts có tổng kết về cách mà các mẫu xâm nhập

vào thế giới phần mềm.

Design Pattern

Trang 4

Add your company slogan

Trang 5

Add your company slogan

Behavioral…

Interpreter

Mediator Strategy

11 Pattern

Method

Chain of Respon sibility

Command

Iterator

Memento Observer

State

Visitor

Design Pattern

Trang 6

Add your company sloganBehavioral…

tả trên để phiên dịch  các câu.

Design Pattern

Trang 7

Add your company slogan

Interpreter

 Định nghĩa

 Interpreter đưa ra một ngôn ngữ, xây dựng cách diễn đạt ngôn ngữ đó cùng với một trình phiên dịch sử 

dụng cách diễn tả trên để phiên dịch các câu. 

Design Pattern

Tạo một cây cú pháp  trừu tượng đại diện cho  một câu đặc thù trong  ngữ pháp đã được định 

nghĩa.

 

Chứa thông tin toàn cục  cho việc thông dịch 

Khai báo 1 giao diện  cho việc thực hiện 1 

thao tác

   Cài đặt một phương  thức thông dịch cho các 

ký pháp không phải đầu 

cuối

Cài đặt 1 thao tác thông  dịch liên kết với những với  những ký pháp đầu cuối

Trang 8

Add your company slogan

Interpreter

Ứng dụng

 Sử dụng mẫu Interpreter khi cần phiên dịch một ngôn ngữ mà ta có thể miêu tả các câu bằng cầu trúc cây cú pháp. Mẫu này hoạt động hiệu quả nhất khi: 

 Cấu trúc ngữ pháp đơn giản. Với các cấu trúc ngữ pháp 

phức tạp, cấu trúc lớp của ngữ pháp trở nên quá lớn và khó kiểm soát, việc tạo ra các cây cú pháp sẽ tốn thời gian và bộ nhớ. 

 Hiệu quả không phải là yếu tố quan trọng nhất. Các cách 

thức biên dịch hiệu quả nhất thường không áp dụng trực 

www.themegallery.com

Design Pattern

Trang 9

Add your company slogan

thuật đó.

Thực hiện các thao tác  nguyên thủy để thực hiện  các bước đã chỉ ra trong  các lớp con của thuật toán

PrimitiveOperation trừu  tượng, các thao tác này  định nghĩa các lớp con cụ  thể để thực hiện các bước 

của một giải thuật

Trang 10

Add your company slogan

 Điều khiển mở rộng các lớp con. Ta có thể định nghĩa 

một template method, template method này gọi các thao tác “hook” tại các điểm đặc biệt, bằng cách đó cho phép các mở rộng chỉ tại các điểm đó. 

www.themegallery.com

Trang 11

Chain of responsibility

Ý nghĩa

 Mẫu này thiết lập một chuỗi bên trong một hệ 

thống, nơi mà các thông điệp hoặc có thể được  thực hiện ở tại một mức nơi mà nó được nhận 

lần đầu hoặc là được chuyển đến một đối tượng 

mà có thể thực hiện điều đó

Trang 12

Add your company slogan

Trang 14

Add your company slogan

Command Pattern

Ý nghĩa

 Gói một mệnh lệnh vào trong một đối tượng mà nó có 

thể được lưu trữ, chuyển vào các phương thức và trả về một vài đối tượng khác

Mô Hình Mẫu

Design Pattern

Trang 16

Add your company slogan

Trang 18

Add your company slogan

Trang 19

a. Vấn đề đặt ra:

Trang 20

Add your company slogan

Mediator

b. Định nghĩa:

Mediator là một đối tượng dùng để đóng gói cách  thức tương tác của một tập hợp các đối tượng. 

Trang 22

Add your company slogan

Mediator

c. Sơ đồ

Trang 23

d. Ưu điểm:

       - Giảm liên kết giữa các colleagues. 

       - Đơn giản hoá giao thức giữa đối tượng bằng cách thay các  tương tác nhiều - nhiều bằng tương tác 1 - nhiều giữa nó và các  colleagues

       - Trừu tượng hoá cách thức tương tác hợp tác giữa các đối  tượng. Tạo ra sự tách biệt rõ ràng hơn giữa các tương tác ngoài 

Trang 24

Add your company slogan

Mediator

Trường hợp ứng dụng:

       - Một nhóm các đối tượng trao đổi thông tin  một  cách  rõ  ràng  nhưng  hệ  thống  khá  phức  tạp  dẫn đến các kết nối không có cấu trúc và khó hiểu. 

        - Việc sử dụng lại một đối tượng gặp khó khăn 

vì nó liên kết với quá nhiều đối tượng khác. 

        - Cho phép tuỳ biến một ứng xử được phân  tán  trong  vài  lớp  mà  không  phải  phân  nhiều  lớp  con. 

Trang 25

    Ví dụ minh họa

Trang 26

Add your company slogan

Trang 27

c. Cơ chế:

Memento là đối tượng có chức năng lưu lại trạng thái nội tại của  một  đối  tượng  khác  -  là  Originator  của  Memento.  Cơ chế undo sẽ yêu cầu một memento từ originator khi nó cần khôi  phục  lại  trạng  thái  của  originator.  Originator  khởi  tạo Memento  với  thông  tin  mô  tả  trạng  thái  hiện  tại  của  nó. Cũng chỉ originator mới có quyền truy xuất và lưu trữ thông tin vào memento vì nó trong suốt đối với các đối tượng còn lại. 

Trang 28

Add your company slogan

Trang 30

Add your company slogan

Trang 31

Ví dụ minh họa

Trang 32

Add your company slogan

Observer

a. Vấn đề:

Trong một nơi hoặc nhiều nơi trong ứng dụng, chúng ta cần phải nhận thức về một sự kiện hệ thống hoặc một sự thay đổi trạng thái ứng dụng. 

Một đối tượng quan sát (observer) được tạo ra để quan sát các thay đổi trạng thái của đối tượng nguồn và tự động cập nhật  thay  đổi  lên  trạng  thái  được  đăng  ký  tương  ứng  của đối tượng đích

Trang 33

b. Định nghĩa:

Observer  định  nghĩa  là  một  phụ  thuộc  1-  nhiều  giữa  các  đối tượng để  khi một đối tượng thay  đổi  trạng  thái  thì  tất  cả  các  phụ  thuộc  của  nó  được  nhận biết và cập nhật tự động 

Trang 34

Add your company slogan

Observer

c. Sơ đồ

Trang 35

d. Đặc điểm:

 Điều duy nhất mà đối tượng chủ cần biết về các đối tượng qua sát là interface mà các đối tượng quan  sát thi hành (Observer interface), chúng không cần biết lớp thi hành cụ thể của đối tượng quan sát,  không cần biết đối tượng quan sát là cái gì và làm cái gì.

 Có thể thêm đối tượng quan sát bất cứ lúc nào. Bởi vì điều duy nhất mà đối tượng chủ phụ thuộc vào 

là danh sách các đối tượng thi hành Observer interface, chúng ta có thể thêm đối tượng quan sát bất 

cứ lúc nào ta muốn.

 Không cần phải thay đổi đối tượng chủ để thêm vào một loại đối tượng quan sát mới. Nếu một lớp cụ  thể muốn trở thành đối tượng quan sát, nó sẽ thi hành Observer interface và đăng ký nó với đối tượng  chủ. Đối tượng chủ không cần phải thay đổi gì để một lớp khác trở thành đối tượng quan sát.

 Sử  dụng  lại  đối  tượng  chủ  hoặc  đối  tượng  quan  sát  một  cách  độc  lập  không  phụ  thuộc  lẫn  nhau.  Chúng ta có thể tạo thêm đối tượng chủ cho phép các đối tượng quan sát thi hành Observer interface  đăng ký với đối tượng chủ đó.

 Thay đổi đối tượng chủ hoặc đối tượng quan sát mà không làm ảnh hưởng đến mối quan hệ giữa đối 

tượng chủ và đối tượng quan sát, chỉ cần các đối tượng quan sát vẫn thi hành Observer pattern.

Trang 36

Add your company slogan

Observer

Ví dụ minh họa

Trang 37

 Là mẫu thiết kế cho phép một đối tượng thay đổi hành vi khi

các trạng thái bên trong của nó thay đổi

 Đối tượng sẽ xuất hiện để thay đổi các lớp của nó.

Trang 38

Add your company slogan

Ứng dụng:

nó cần phải thay đổi hành vi tại thời điểm chạy chương trình dựa trên trạng thái đó.

kiện Mẫu State sẽ đặt mỗi nhánh của điều kiện trong một lớp riêng Điều này cho phép bạn xử lý trạng thái của đối tượng như một đối tượng đúng nghĩa của nó mà có thể thay đổi một cách độc lập với các đối tượng khác

Trang 39

 Là mẫu thiết kế dùng để định nghĩa một họ các thuật toán bằng

các lớp đối tượng để thuật toán có thể thay đổi độc lập đối với chương trình sử dụng thuật toán

 Cung cấp một họ giải thuật cho phép client chọn lựa linh động

một giải thuật cụ thể khi sử dụng

Trang 40

Add your company slogan

STRATEGY

Ứng dụng:

Strategy cung cấp cách thức để định hình ra một lớp với một trong số các hành vi đó.

Strategy có thể được sử dụng khi các biến thể được thực hiện như một hệ thống phân lớp của các thuật toán.

Design Pattern

Trang 42

Add your company slogan

Ứng dụng:

 Một cấu trúc đối tượng chứa đựng nhiều lớp của các đối tượng với

các giao diện khác nhau, và ta muốn thực hiện các thao tác trên các đối tượng này thì đòi hỏi các lớp cụ thể của chúng

 Nhiều thao tác khác nhau và không có mối liên hệ nào cần được

thực hiện trên các đối tượng trong cấu trúc đó, và ta muốn tránh

“làm hỏng” các lớp của chúng khi thực hiện các thao tác này Visitor cho phép ta giữ lại các thao tác có mối liên hệ với nhau bằng cách định nghĩa chúng trong một lớp

 Khi một cấu trúc đối tượng được chia sẻ bởi nhiều ứng dụng, sử

Trang 43

Thank You !

Ngày đăng: 11/08/2014, 16:21

TỪ KHÓA LIÊN QUAN

w