Bài giảng Công nghệ web và ứng dụng - Phần 3: Xây dựng ứng dụng PHP theo mô hình 3-Tiers - Nguyễn Hoàng Tùng

Nội dung chính của slide này

Mô hình 3-Tiers

Xây dựng ứng dụng mẫu theo 3-Tiers

Mô hình 3-Tiers

Tại sao lại sử dụng 3-Tiers?

Mô hình 3-Tiers là gì?

pdf 22 trang phuongnguyen 8000
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Công nghệ web và ứng dụng - Phần 3: Xây dựng ứng dụng PHP theo mô hình 3-Tiers - Nguyễn Hoàng Tùng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Công nghệ web và ứng dụng - Phần 3: Xây dựng ứng dụng PHP theo mô hình 3-Tiers - Nguyễn Hoàng Tùng

Bài giảng Công nghệ web và ứng dụng - Phần 3: Xây dựng ứng dụng PHP theo mô hình 3-Tiers - Nguyễn Hoàng Tùng
XÂY DỰNG ỨNG DỤNG PHP 
 THEO MÔ HÌNH 3-TIERS 
 Giảng viên phụ trách: 
 Nguyễn Hoàng Tùng 
 Bộ môn Tin học 
 Email: nhoangtung@agu.edu.vn 
Nội dung chính của slide này 
 Mô hình 3-Tiers 
 Xây dựng ứng dụng mẫu theo 3-Tiers 
20/08/2012 Công nghệ Web và Ứng dụng 2 
Mô hình 3-Tiers 
 Tại sao lại sử dụng 3-Tiers? 
 Mô hình 3-Tiers là gì? 
20/08/2012 Công nghệ Web và Ứng dụng 3 
Tại sao lại sử dụng 3-Tiers? 
 Muốn hiểu tại sao người ta chia một phần mềm có lưu trữ 
 dữ liệu thành 3 lớp (3-Tiers), thì phải nhìn từ lịch sử lập 
 trình, nghĩa là tại sao người ta cần chia một phần mềm ra 
 thành nhiều phần khác nhau? Rồi những phần đó tại sao lại 
 được xếp nhóm vào 3 lớp chính là Presentation, Business 
 Logics và Data? 
  Từ đây trở đi, thuật ngữ phần mềm có nghĩa là phần mềm có lưu trữ dữ liệu. 
20/08/2012 Công nghệ Web và Ứng dụng 4 
Tại sao lại sử dụng 3-Tiers? 
 Sau nhiều năm phát triển, kinh nghiệm cho người ta thấy 
 chia phần mềm thành 3-Tiers sẽ có tác dụng tốt nhất cho: 
 Phát triển phần mềm: Có tính chuyên nghiệp hóa, có thể chia 
 cho nhiều nhóm được đào tạo nhiều kỹ năng khác nhau, từ 
 thiết kế mỹ thuật cho đến lập trình đến tổ chức Database. 
 Bảo trì: Với các lớp được phân chia theo như đã nói, thì các 
 thành phần của một hệ thống dễ được thay đổi, nhưng sự thay 
 đổi có thể được cô lập trong từng lớp, hoặc chỉ ảnh hưởng đến 
 lớp ngay gần kề của nó, chứ không phát tán náo loạn trong cả 
 chương trình. 
 Mở rộng: Việc thêm chức năng vào cho từng lớp sẽ dễ dàng 
 hơn là phân chia theo cách khác. 
20/08/2012 Công nghệ Web và Ứng dụng 5 
Mô hình 3-Tiers là gì? 
“3-Tiers là một kiến trúc kiểu client/server mà trong đó giao 
diện người dùng (UserInterface), các quy tắc xử lý nghiệp vụ 
(BusinessRule hay BusinessLogic), và việc lưu trữ dữ liệu được 
phát triển như những module độc lập, và mô hình 3 lớp (3-
Tiers) được coi là một kiến trúc phần mềm và là một mẫu thiết 
kế.” (dịch từ Wikipedia). 
20/08/2012 Công nghệ Web và Ứng dụng 6 
Mô hình 3-Tiers là gì? 
 Như vậy, mô hình này phân tách ứng dụng ra làm 3 module 
 riêng biệt, bao gồm: 
 Lớp Presentation: Để 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. 
 Lớp Business Logic: Xử lý dữ liệu, cung cấp các chức năng 
 của phần mềm. 
 Lớp Data: Lưu trữ dữ liệu, cho phép lớp Business Logic có thể 
 tìm kiếm, trích xuất, cập nhật, dữ liệu. 
20/08/2012 Công nghệ Web và Ứng dụng 7 
Mô hình 3-Tiers là gì? 
20/08/2012 Công nghệ Web và Ứng dụng 8 
Xây dựng ứng dụng mẫu theo 3-Tiers 
 Lớp DataService 
 Lớp Data 
 Lớp Business (lớp Controller) 
 Lớp Presentation (lớp Giao diện) 
 Trang index.php 
 Các trang khác ngoài index.php 
 Code mẫu theo mô hình 3-Tiers. 
20/08/2012 Công nghệ Web và Ứng dụng 9 
Lớp DataService 
 Chứa thông tin kết nối đến CSDL: 
 server : Sever chứa CSDL muốn kết nối đến. 
 username : Tên đăng nhập CSDL. 
 password : Mật khẩu đăng nhập. 
 database : Tên cơ sở dữ liệu cần kết nối. 
 Chứa các hàm xử lý trực tiếp với CSDL: 
 Hàm kết nối. 
 Hàm thực thi truy vấn. 
 Hàm xử lý dữ liệu trước khi thực thi truy vấn... 
 Lớp này được thực thi trên Server. 
20/08/2012 Công nghệ Web và Ứng dụng 10 
Lớp DataService 
20/08/2012 Công nghệ Web và Ứng dụng 11 
Lớp Data 
 Chứa các hàm truy vấn đến CSDL 
 Lấy dữ liệu (SELECT) Dùng ExecuteQuery() 
 Thêm mới, Cập nhật, Xóa Dùng ExecuteNonQuery() 
 Các hàm trong lớp này gọi hàm trực tiếp từ lớp DataService 
 để thực thi truy vấn. 
 Lớp này được thực thi trên Server. 
20/08/2012 Công nghệ Web và Ứng dụng 12 
Lớp Data 
 Tên lớp. 
 Một số hàm thực thi 
 truy vấn. 
20/08/2012 Công nghệ Web và Ứng dụng 13 
Lớp Business 
 Lớp này nhận dữ liệu từ lớp Giao diện, sau đó xử lý, tính 
 toán,... Cuối cùng gởi dữ liệu cho lớp Data xử lý. 
 Đây là lớp trung gian, đóng vai trò quan trọng trong việc xử 
 lý các nghiệp vụ tính toán phức tạp. 
 Lớp này được thực thi trên Server. 
20/08/2012 Công nghệ Web và Ứng dụng 14 
Lớp Business 
 Danh sách các thuộc 
 tính (Properties). 
20/08/2012 Công nghệ Web và Ứng dụng 15 
Lớp Presentation 
 Trong thiết kế web, lớp này còn được gọi là Front-end (theo 
 cách hiểu đơn giản), tức là phần giao diện mà người dùng 
 nhìn thấy, thao tác được. 
 Phần này chứa các giao diện hiển thị nội dung, các form 
 nhập liệu, hộp thoại giao tiếp với người dùng. 
 Lớp này được thực thi phía Client. 
20/08/2012 Công nghệ Web và Ứng dụng 16 
Lớp Presentation 
20/08/2012 Công nghệ Web và Ứng dụng 17 
Trang index.php 
 Hàm __autoload($class_name) dùng để lấy 
 tên lớp đang thực thi thông qua toán tử new. 
 Kỹ thuật dùng include thông qua file do.php 
20/08/2012 Công nghệ Web và Ứng dụng 18 
Trang index.php 
 Kỹ thuật dùng include thông qua file do.php 
20/08/2012 Công nghệ Web và Ứng dụng 19 
Các trang khác ngoài index.php 
 Đảm bảo rằng mọi trang khác phải được 
 truy xuất thông qua trang index.php. 
 Hàm __autoload() bên 
 trang index.php sẽ “bắt” 
 được tên lớp là sachbs. 
20/08/2012 Công nghệ Web và Ứng dụng 20 
Code mẫu theo mô hình 3-Tiers 
 Demo bài tập quản lý sách trực tuyến. 
 Source code mẫu tham khảo tại trang web: 
 Tài liệu môn học: 
20/08/2012 Công nghệ Web và Ứng dụng 21 
Giải đáp thắc mắc 
20/08/2012 Công nghệ Web và Ứng dụng 22 

File đính kèm:

  • pdfbai_giang_cong_nghe_web_va_ung_dung_phan_3_xay_dung_ung_dung.pdf