Bi ging mn Lp trnh Windows nng cao
Bài giảng môn Lập trình Windows nâng cao Ôn bài cũ Ø Các thành phần cơ bản của ADO. NET
Bài giảng môn Lập trình Windows nâng cao Ôn bài cũ Ø Các bước cơ bản để truy xuất dữ liệu từ ADO. NET § § Tạo phương thức kết nối Tạo một thực thi SQL Tạo dataset hoặc datatable Gán đối tượng với dữ liệu truy xuất
Bài giảng môn Lập trình Windows nâng cao CHƯƠNG 4: X Y DỰNG ỨNG DỤNG ĐA TẦNG
Bài giảng môn Lập trình Windows nâng cao Mục tiêu: học sinh nắm được: Ø Tổng quan về xây dựng ứng dụng đa tầng, chức năng của các tầng và ý nghĩa và ưu điểm của mô hình đa tầng. Ø Biết tạo được ứng dụng đa tầng đơn giản.
CHƯƠNG 4: X Y DỰNG ỨNG DỤNG ĐA TẦNG Ø 4. 2. 1 Tổng quan: Trong phát triển ứng dụng, để dễ quản lý các thành phần của hệ thống được nhóm các thành phần có cùng chức năng lại với nhau thành từng lớp (Tầng). Ø Mỗi tầng có một chức năng riêng để công việc không bị chồng chéo ảnh hưởng lẫn nhau, dễ mở rộng, tái sử dụng và bảo mật. Ø Ba tầng là phổ biến nhất Là Tầng giao diện(Presentation), Tầng Xử lý (Business Logic), và tầng dữ liệu(Data Access).
MÔ HÌNH 3 TIER Hình 4 -1
CHƯƠNG 4: X Y DỰNG ỨNG DỤNG ĐA TẦNG 4. 2. 2 Chức năng của các tầng 4. 2. 2. 1 Tầng giao diện(Presentation): Ø Làm nhiệm vụ giao tiếp với người dùng cuối để thu thập dữ liệu và hiển thị kết quả dữ liệu thông qua các thành phần trong giao diện người sử dụng. Ø Gởi yêu cầu và nhận thông tin phản từ Business Logic cung cấp. Ø Lớp này có 2 thành phần chính là User Interface Components và User Interface Process
CHƯƠNG 4: X Y DỰNG ỨNG DỤNG ĐA TẦNG Ø UI Components: thu thập và hiển thị thông tin cho người dùng cuối. Có thể là các Text. Box, các Button, Data. Grid… Ø UI Process Components: quản lý các qui trình chuyển đổi giữa các UIComponents. Ví dụ quản lý các màn hình nhập dữ liệu. Ø Tầng này không sử dụng trực tiếp các dịch vụ của lớp Data Access mà sử dụng thông qua các dịch vụ của lớp Business Layer, vì khi sử dụng trực tiếp như vậy, có thể bỏ qua các ràng buộc, các logic nghiệp vụ mà ứng dụng cần phải có.
4. 2. 2. 2 Tầng xử lý Business tier (Business Logic Layer) Ø Đóng vai trò trung gian, tiếp nhận các dịch vụ do lớp Data Access Layer cung cấp, xử lý và truyền các dịch vụ cho lớp Presentation khi có yêu cầu. Ø Busines Layer có các lớp thành phần Business. Components, Business Entities và Service Interface.
4. 2. 2. 2 Tầng xử lý Business tier (Business Logic Layer) Ø Business Entities là những thực thể mô tả những đối tượng thông tin mà hệ thống xử lý. Ø Business Entities dùng để trao đổi thông tin giữa lớp Presentation và lớp Data Access Layer.
4. 2. 2. 2 Tầng xử lý Business tier (Business Logic Layer) Ø Business Components là những thành phần chính thực hiện các dịch vụ mà Service Interface cung cấp, chịu trách nhiệm kiểm tra các ràng buộc logic(constraints), các qui tắc nghiệp vụ(business rules), sử dụng các dịch vụ bên ngoài khác để thực hiện các yêu cầu của ứng dụng
4. 2. 2. 3 Tầng Data tier (Data Access Layer: DAL) Ø Thực hiện các lưu trữ và truy xuất dữ liệu. Sử dụng các dịch vụ của các hệ CSDLđể thực hiện nhiệm vụ của mình. Ø Các thành phần chính là Data Access Logic, Data Sources. Data Access Logic components (DALC) là thành phần chính chịu trách nhiệm lưu trữ vào và truy xuất dữ liệu từ các nguồn dữ liệu – Data Sources như RDMBS, XML, File systems….
4. 2. 3 Xây dựng ứng dụng 3 Tier Tầng giao diện tạo form 1 ở hình 4 -2 Hình 4 -2
Phân tích chức năng của mỗi tầng Ø Tầng giao diện dùng để hiển thị thông tin, cho phép thêm, xóa, sửa. ØTầng Busines Logic Layer: dùng để xử lí thêm, xóa, sửa và đóng vai trò trung gian giữa Data. Access Layer và Presentation. ØTầng Data. Access Layer: lưu trữ và cho phép kết nối truy xuất dữ liệu
Cách tạo mỗi tầng -> File/ new/ Project rồi đặt tên.
Thêm tầng BLL
Thêm tầng BLL
Thiết lập tham chiếu giữa các tầng
Thiết lập tham chiếu giữa các tầng BLL tham chiếu đến DAL Giao diện tham chiếu đến BLL
Các phương thức xây dựng ứng dụng 3 Tier tầng Data. Access Layer public Sql. Connection TAOKETNOI() { return new Sql. Connection(“chuổi kết nối"); } public Data. Table TAOBANG(String sql) { Sql. Connection con = TAOKETNOI(); Sql. Data. Adapter da = new Sql. Data. Adapter(sql, con); Data. Table dt = new Data. Table(); da. Fill(dt); return dt; } public void THUCTHI(string sql) { Sql. Connection con = TAOKETNOI(); Sql. Command cmd = new Sql. Command(sql, con); con. Open(); cmd. Execute. Non. Query(); con. Close(); cmd. Dispose(); }
Các phương thức xây dựng tầng Busines Logic Layer Data. Acess ac = new Data. Acess(); // khởi tạo đối tượng từ DAL public void them(string masv, string hoten) { string sql = " insert into SINHVIEN values('" + masv + "', '" + hoten + "') "; ac. THUCTHI(sql); } public void xoa(string masv) { string sql = "delete from SINHVIEN where masv='" + masv + "'"; ac. THUCTHI(sql); } public void capnhat(string masv, string hoten) { string sql = "update SINHVIEN set hoten='" + hoten + "' where masv= '" + masv + "'"; ac. THUCTHI(sql); } public Data. Table hienthi() { string sql 1 = "Select * from SINHVIEN"; return ac. TAOBANG(sql 1); }
Các phương thức chính xây dựng tầng giao diện (Presentation): BLL bl = new BLL(); // khởi tạo một đối tượng ở tầng xử lý (Business Logic Layer) private void Form 1_Load(object sender, System. Event. Args e) { data. Grid. View 1. Data. Source = bl. hienthi(); // gán Data. Grid. View với Data. Table để hiển thị lên Form } private void txtthem_Click(object sender, System. Event. Args e) { bl. them(txtmasv. Text, txthoten. Text); // gọi phương thức thêm Form 1_Load(sender, e); // đưa lại dữ liệu lên form }
- Slides: 24