Tr

ườ

ng Đ i h c Khoa h c T nhiên, ĐHQG-HCM ệ ệ

ạ ọ ọ Khoa Công Ngh Thông Tin B môn Công Ngh Ph n M m ề ộ

Gi

i thi u mô hình 3-layer -

ệ DataBinding

M c tiêu

tier, 3-layer

t 3-ệ ệ ượ vai trò & trách nhi mệ c a m i layer t đ ủ ỗ

trong mô hình 3-layer

2/12

 Phân bi  Phân bi c  Qu n lý ngo i l ạ ệ ả  DataBinding

1-tier, 3-layer

GUI

Application + Data

Business logic

Data Access

Data

3/12

Physical view Logical view

2-tier, 3-layer

GUI

Client tier

Business logic

Data Access

Data

Data tier

4/12

Physical view Logical view

3-tier, 3-layer

GUI

Browsers

Presentation tier

Local clients

i

Web Server

i

Application

Web Server

Web

i

i

w e v   l a c g o L

w e v   l a c s y h P

Business logic

Business tier

Data Access

Data tier

Data

5/12

Vai trò c a các layer

 GUI (Presentation) Layer: Nh p li u và trình bày d li u, ậ

ệ c ki m tra d li u tr ữ ệ ể ữ ệ c khi g i ọ ướ ể ồ ướ

có th bao g m các b Business Logic Layer.

 Business Logic Layer: Ki m tra các yêu c u nghi p v ụ ể ệ ầ

Transaction,

tr ậ qu n lý các c khi c p nh t d li u, qu n lý các ả ậ ữ ệ concurrent access. ướ ả

 Data Access Layer: K t n i CSDL, tìm ki m, thêm, xóa, ế ố ế

6/12

s a,…trên CSDL ử

Các l u ý quan tr ng

ư

ệ ử ệ

ủ ẫ

layer nào ch ỉ ử ế ị ử ệ

7/12

mang tính ch t t  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 ằ ở ấ ươ ng đ i ố

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

Data Transfer Object (DTO)

Business logic

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 ữ ự ề ể ầ ả

10/12

ự ế (decoupling)  Tái s d ng ử ụ  Chia s trách nhi m ẻ ệ

Qu n lý ngo i l

ạ ệ

GUI

Error messages

Errors while treating data input

GUI layer Error Handling

Log

Thrown business exceptions

Business

Errors while treating in business layer

Business Error Handling

Database error codes

Database errors while executing

Database

Database Error Handling (controlled by DBMS)

11/12

Qu n lý ngo i l

ạ ệ

b t kỳ layer nào ạ ệ ở ấ

m t layer thì: ở ộ

 Ngo i l  Khi ngo i l ử

lên layer “cao h n” ơ ạ ệ

có th x y ra ể ả x y ra ạ ệ ả  X lý n i b trong layer đó ộ ộ  “Quăng” ngo i l  Không x lýử

m t layer “th p h n” ậ t ạ ệ ừ ộ ấ ơ

ử  Khi m t layer nh n ngo i l ộ ộ

lên layer “cao h n” ạ ệ ơ

12/12

ộ  X lý n i b  “Quăng” ngo i l  Không x lýử

DataBinding

DataSource là Object; ho c Object implement IList ặ

VD: DataSource có th là DataSet, DataView, User-Define Class

13/12

DataBinding DataFlow

14/12

Controlling DataBinding

15/12

Controlling DataBinding

16/12