Tải bản đầy đủ (.pdf) (13 trang)

Tuan11 mvp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (684.16 KB, 13 trang )

11/11/2019

Lập trình Ứng dụng quản lý
Model – View – Presenter Pattern

Nội dung
 Khái niệm Design Pattern

 MVC, MVP Pattern
 Winform MVP

1


11/11/2019

Nội dung
 Khái niệm Design Pattern
 MVC, MVP Pattern
 Winform MVP

Khái niệm Design Pattern
 Mẫu thiết kế (Design Pattern) là vấn đề thông

dụng cần giải quyết và là cách giải quyết vấn đề
đó trong một ngữ cảnh cụ thể, Mẫu thiết kế tuân
thủ nghiêm ngặt các nguyên lý thiết kế hướng đối
tượng ở trên.
 Mẫu thiết kế không đơn thuần là một bước nào
đó trong các giai đoạn phát triển phần mềm mà
nó đóng vai trị là sáng kiến để giải quyết một vấn


đề thơng dụng nào đó. Mẫu thiết kế sẽ giúp cho
việc giải quyết vấn đề nhanh, gọn và hợp lý hơn.
 Mẫu thiết kế còn được sử dụng nhằm cô lập các
thay đổi trong mã nguồn, từ đó làm cho hệ thống
có khả năng tái sử dụng cao.

2


11/11/2019

Mơ hình ứng dụng chung

Xu hướng xây dựng UI
 Trong các nền tảng lập trình hiện đại như .NET,

khi các cơng cụ và kỹ thuật hỗ trợ lập trình giao
diện người dùng (UI) ngày càng trở nên mạnh mẽ
và tiện dụng thì người phát triển có xu hướng
đưa nhiều xử lý bên ngồi vào các lớp UI.
 Khó khăn:
 UI là thành phần có nhiều thay đổi nhất.
 Việc kiểm thử qua UI phải thực hiện thủ công hoặc

bằng script (thực hiện tương tác).
 Code xử lý trong UI bị trùng lặp.

3



11/11/2019

Tương tác trong single view

Ví dụ

4


11/11/2019

Giải pháp xây dựng ứng dụng tương tác
 Mục tiêu thiết kế tách rời xử lý UI với xử lý logic

của ứng dụng để có được kiến trúc tốt.
 Các mẫu thiết kế kiến trúc UI tách rời các thành
phần xử lý với thành phần thể hiện ra đời như:
MVC, MVP, MVVM,… phù hợp trên mỗi nền tảng
nhất định (dựa vào sự đáp ứng tương tác).

Nội dung
 Khái niệm Design Pattern

 MVC, MVP Pattern
 Winform MVP

5


11/11/2019


MVC pattern
 Model-View-Controller (MVC) pattern chia nhỏ các

thành phần dữ liệu, thể hiện (output) và dữ liệu nhập
từ người dùng (input) thành những thành phần riêng
biệt.
 Model chứa dữ liệu và các tính tốn xử lý logic để giải

quyết vấn đề mà phần mềm hướng tới (business logic).
 View là thành phần đảm nhận việc thể hiện những dữ
liệu của Model. View bao gồm những gì thể hiện trên
màn hình như các control, form… Trên cùng một Model,
có thể có nhiều View.
 Controller là thành phần đảm nhận việc xử lý đáp trả lại
các dữ liệu được đưa vào từ người dùng như các sự
kiện chuột, bàn phím, các tương tác lên các control…
Controller là cầu nối giữa người dùng và ứng dụng.

Mơ hình MVC cơ bản

Controller

View

Model

6



11/11/2019

MVC Observer Pattern

Controller

View

Model

Mơ hình tương tác

7


11/11/2019

Ví dụ

MVP Pattern
 Model-View-Presenter (MVP) Pattern ra đời từ

sau thập niên 90, là sự cải tiến từ MVC pattern
với các đặc điểm:
 Presenter đảm nhận các chức năng của Controller.
 View tiếp nhận và hồi đáp tương tác người dùng

thông qua event (phù hợp với nền tảng desktop).
 Giúp xử lý các trạng thái thay đổi phức tạp của
Model.

 Lưu giữ được UI state.

8


11/11/2019

MVP cơ bản

 Model chứa dữ liệu và các tính toán xử lý logic.
 View là thành phần đảm nhận trình bày từ những dữ

liệu của Model.
 Presenter là thành phần đảm nhận các xử lý về trình
bày mà nó cần đến sự tương tác trên dữ liệu.

MVP – Passive View

Presenter

View

Model

9


11/11/2019

MVP – Supervising Controller


Presenter

View

Model

Mơ hình tương tác

10


11/11/2019

Ví dụ

Nội dung
 Khái niệm Design Pattern

 MVC, MVP Pattern

 Winform MVP

11


11/11/2019

Mơ hình


 Model chứa dữ liệu và các tính tốn xử lý logic.
 View là thành phần đảm nhận trình bày từ những dữ liệu của Model và

là tổng hợp của các form, control được sử dụng.

 Presenter là thành phần đảm nhận các xử lý về trình bày cũng như

tương tác đến dữ liệu bên dưới và có thể tương tác để thay đổi View
trong quá trình xử lý.

Tương tác

12


11/11/2019

Mơ hình áp dụng thực tế

Minh họa
 Xây dựng ứng dụng xử lý cơ bản dữ liệu

Category trong database QLBH.

13



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×