Thông tin tài liệu:
Bài giảng Lập trình ứng dụng Window Form hướng đối tượng được biên soạn nhằm cung cấp cho các bạn những kiến thức về khái niệm của mô hình 3-Layer; vai trò & trách nhiệm của mỗi layer; ư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.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình ứng dụng Window Form hướng đối tượng
LẬP TRÌNH ỨNG DỤNG WINDOW FORM
HƯỚNG ĐỐI TƯỢNG
Ths.Nguyen Tan Thuan
Mob:090 562 6276 – Email: NguyenTanthuan@yahoo.com
Giới thiệu mô hình
3layer
Ths.Nguyen Tan Thuan
Mob:090 562 6276 – Email: NguyenTanthuan@yahoo.com
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 3layer.
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 Graphic User Interface (GUI):
Thành phần giao diện, là các
GUI 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
Business logic 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
Data Access
trị CSDL
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 GUI layer Error Handling
Thrown business
Log
Business exceptions
Errors while
treating in
business layer Business Error Handling
Database error codes
Database errors Database Error Handling
Database while executing
(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 ...