Tải bản đầy đủ (.ppt) (24 trang)

Lập Trình Ứng Dụng Window Form Hướng Đối Tượng

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 (471.95 KB, 24 trang )

LẬP TRÌNH ỨNG DỤNG WINDOW FORM
HƯỚNG ĐỐI TƯỢNG

Ths.Nguyen Tan Thuan
Mob:090 562 6276 – Email:


Giới thiệu mô hình
3-layer

Ths.Nguyen Tan Thuan
Mob:090 562 6276 – Email:


Yêu cầu xem lại các nội dung sau
 Lớp và đối tượng
 Thư viện xử lý đồ hoà
 Xử lý ngoại lệ
 Lập trình SQL và hệ quản trị cơ sở dữ
liệu SQL Server 2000 hoặc cao hơn.

3/12


Nội dung
 Khái niệm của mô hình 3-Layer
 Phân biệt được vai trò & trách nhiệm của
mỗi layer.
 Các ưu điểm của mô hình 3-Layer
 Cài đặt ứng dụng trên mô hình 3-Layer.
 Quản lý ngoại lệ trong mô hình 3-Layer.


 Khái niệm của mô hình các Tier
 Phân biệt 3-Tier, 3-Layer
4/12


Mục tiêu
 Nắm được khái niệm mô hình 3-layer và
cài đặt ứng dụng trên mô hình 3-layer
 Phân biệt được 3-Layer và 3-Tier
 Ứng dụng mô hình 3-Layer vào bài tập
nhóm

5/12


Khái niệm mô hình 3-layer.
 Khái niệm của mô hình 3-layer.


3-Layers có tính logic(mỗi layer có 1 công việc) và là
1 thành phần của 3-Tiers. Gồm 3 lớp chính.

6/12


Khái niệm của mô hình 3-layer.
Logical view
GUI

Business logic


Graphic User Interface (GUI):
Thành phần giao diện, là các
form của chương trình tương
tác với người sử dụng
Xử lý các nghiệp vụ của chương
trình như tính toán, xử lý hợp lệ
và toàn vẹn về mặt dữ liệu.
Tầng giao tiếp với các hệ quản
trị CSDL

Data Access

Data
7/12


Việc trao đổi liên lạc giữa các layer
GUI

Business logic

Data Access

Data Transfer Object (DTO)
Data

Các giá trị, dòng, bảng

8/12



Sự phụ thuộc giữa các layer
GUI

Business logic

Data Transfer Object (DTO)

Data Access

Data

9/12


Tính chất của mô hình 3-layer
 Giảm sự kết dính giữa các thực thể phần mềm
 Tái sử dụng
 Chia sẻ trách nhiệm

10/12


Vai trò của các layer
 GUI (Presentation) Layer: Nhập liệu và trình bày dữ liệu,
có thể bao gồm các bước kiểm tra dữ liệu trước khi gọi
Business Logic Layer.
 Business Logic Layer: Kiểm tra các yêu cầu nghiệp vụ
trước khi cập nhật dữ liệu, quản lý các giao dịch

Transaction, quản lý các truy cập đồng thời concurrent
access.
 Data Access Layer: Kết nối CSDL, tìm kiếm, thêm, xóa,
sửa,…trên CSDL

11/12


Các lưu ý quan trọng
 Phân biệt vai trò Business Layer và khái niệm “xử lý”
 Mỗi Layer vẫn có xử lý riêng, đặc trưng của Layer đó
 Đôi khi việc quyết định 1 xử lý nằm ở layer nào chỉ mang
tính chất tương đối

12/12


Quản lý ngoại lệ
GUI
Error messages
Errors while
treating data input

Business

Errors while
treating in
business layer

GUI layer Error Handling


Thrown business
exceptions

Log

Business Error Handling

Database error codes
Database

Database errors
while executing

Database Error Handling
(controlled by DBMS)

13/12


Quản lý ngoại lệ
 Ngoại lệ có thể xảy ra ở bất kỳ layer nào
 Khi ngoại lệ xảy ra ở một layer thì:
Xử lý nội bộ trong layer đó
 “Ném” ngoại lệ lên layer “cao hơn”
 Không xử lý
 Khi một layer nhận ngoại lệ từ một layer “thấp hơn”
 Xử lý nội bộ
 “Ném” ngoại lệ lên layer “cao hơn”
 Không xử lý



14/12


Ưu điểm của mô hình 3-Layer
 Khi ứng dụng đòi hỏi có sự tách biệt 3 phần: giao diện,
xử lý nghiệp vụ, giao tiếp với hệ quản trị CSDL để người
viết có thể dễ dàng quản lý ứng dụng của mình khi có
bug xảy ra với 1 số thành phần xử lý nghiệp vụ không
mong muốn. Ngoài ra với mô hình này nó còn tạo ra 1
không gian làm việc rất tốt để người thiết kế giao diện,
lẫn người lập trình có thể làm việc chung với nhau 1
cách dễ dàng.
 Khả năng tái tạo cao: Khi ứng dụng bất chợt yêu cầu
thay đổi hệ quản trị CSDL hoặc chuyển ứng dụng từ
window application sang web application, việc xây dựng
lại ứng dụng từ đầu rất tốn nhiều thời gian và chi phí. Vì
vậy với mô hình này ra đời sẽ giải quyết vấn đề này
15/12


Ưu điểm của mô hình 3-Layer
 Các thao tác trên control như: kiểm tra nhập hợp lệ, ẩn
hiện các control, và các xử lý thông tin trên control thì ta
đặt các hàm xử lý ngay trên GUI.
 Các thao tác trên các dữ liệu cơ bản như: List, Array
List, Object, DataTable, string, int, long, float,… ta xử lý
ngay chính tầng nghiệp vụ BUS, vì bản chất khi thay đổi
hệ quản trị hay các platform thì BUS không thay đổi.

 Các thao tác với CSDL như truy vấn, kết nối, đóng kết
nối,… ta xử lý trong DAL.
 Khi có nhu cầu thay đổi hệ quản trị CSDL, ta chỉ cần
thay đổi DAL phù hợp với hệ quản trị mới, giữ nguyên
BUS, GUI và build lại project.
 Khi có nhu cầu chuyển đổi qua lại giữa ứng dụng web
forms hoặc win forms ta chỉ cần thay GUI, giữ nguyên
DAL,BUS và build lại project
16/12


1-tier, 3-layer
Physical view

Logical view
GUI

Application + Data

Business logic
Data Access

Data

17/12


2-tier, 3-layer
Physical view
Client tier


Logical view
GUI
Business logic
Data Access

Data tier

Data

18/12


Khái niệm mô hình 3-Tiers
 3-Tiers có tính vật lý (physical): là mô hình client-server
(mỗi tier có thể đặt chung 1 nơi hoặc nhiều nơi, kết nối
với nhau qua Web services, WCF, Remoting...). Như
hình vẽ ta thấy 3 tầng rõ rệt 3 tầng:

19/12


Khái niệm mô hình 3-Tiers
Presentation tier

Browsers

Local clients

Presentation tier : được dùng để

giao tiếp với người dùng, nhiệm
vụ chính là hiển thị dữ liệu và
nhận dữ liệu từ người dùng

Web Server

Business Logic tier : nhiệm vụ
chính là cung cấp các chức năng
của phần mềm.
Business tier

Data tier

Data tier: lưu trữ dữ liệu, là các hệ
quản trị CSDL như MS SQL Server,
Oracle, SQLite, MS Access, XML
files, text files,...
20/12


3-tier, 3-layer

Web Server

Business tier

Logical view

Local clients


Data tier

GUI

Browsers

Physical view

Presentation tier

Web Server
Application

Web

Business logic
Data Access

Data
21/12


Các ưu và nhược điểm của 3-tiers
 Ưu điểm:
Dễ dàng mở rộng, thay đổi quy mô của hệ thống: Khi
cần tải lớn, người quản trị có thể dễ dàng thêm các
máy chủ vào nhóm, hoặc lấy bớt ra trong trường hợp
ngược lại.
 Nhược điểm:
 Việc truyền dữ liệu giữa các tầng sẽ chậm hơn vì

phải truyền giữa các tiến trình khác nha, dữ liệu cần
phải được đóng gói -> truyền đi -> mở gói trước khi
có thể dùng được.


22/12


Giới thiệu mô hình
3-layer

Ths.Nguyen Tan Thuan
Mob:090 562 6276 – Email:

23/12


24/12



×