intTypePromotion=3

Bài giảng Mã nguồn mở: Chương 7

Chia sẻ: Nguyễn Minh | Ngày: | Loại File: PPTX | Số trang:42

0
58
lượt xem
12
download

Bài giảng Mã nguồn mở: Chương 7

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 7 Mô hình PHP MVC thuộc bài giảng Mã nguồn mở. Cùng nắm kiến thức trong chương này thông qua việc tìm hiểu các nội dung sau: khái niệm về kiến trúc phần mềm, tổng quan về kiến trúc 3 lớp, tổng quan về kiến trúc MVC, so sánh MVC và 3 lớp, xây dựng website PHP MVC đơn giản, Framework MVC cho website PHP.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Mã nguồn mở: Chương 7

  1. Môn Các Hệ Thống Mã Nguồn Mở 1 Mô hình php mvc Chương 7 : Giảng viên : ThS. Nguyễn Minh Thành Email : thanhnm@itc.edu.vn
  2. Môn Các Hệ Thống Mã Nguồn Mở 2 Nội Dung 1. Khái niệm về kiến trúc phần mềm 2. Tổng quan về kiến trúc 3 lớp 3. Tổng quan về kiến trúc MVC 4. So sánh MVC và 3 lớp 5. Xây dựng website PHP MVC đơn giản 6. Framework MVC cho website PHP
  3. Môn Các Hệ Thống Mã Nguồn Mở 3 Khái niệm về kiến trúc phần mềm “Kiến trúc phần mềm của một chương trình hoặc hệ thống tính toán là cấu trúc hoặc các cấu trúc của hệ thống đó, gồm các thành phần của phần mềm, các thuộc tính có thể trông thấy được từ bên ngoài của các thành phần này, và các mối quan hệ giữa chúng.” Phát triển phần mềm theo một kiến trúc nhất định sẽ giúp cho việc quản lý hệ thống được tốt hơn và tận dụng tài nguyên của hệ thống hiệu quả hơn. Đồng thời cũng dễ bảo trì và mở rộng.
  4. Môn Các Hệ Thống Mã Nguồn Mở 4 Tổng quan về mô hình 3 lớp Để dễ quản lý các thành phần của hệ thống, cũng như không bị ảnh h ưởng bởi các thay đổi, người ta hay nhóm các thành phần có cùng chức năng lại với nhau và phân chia trách nhiệm cho từng nhóm để công việc không bị chồng chéo và ảnh hưởng lẫn nhau. Một trong những mô hình lập trình như v ậy đó là Mô hình 3 lớp (Three Layers).
  5. Môn Các Hệ Thống Mã Nguồn Mở 5 Các thành phần trong 3-Layer Mô hình 3 lớp được cấu thành từ: Presentation Layers, Business Logic Layers, và Data Access Layers.
  6. Môn Các Hệ Thống Mã Nguồn Mở 6 Cách vận hành của mô hình Đối với 3-Layer, yêu cầu được xử lý tuần tự qua các layer như hình. - Đầu tiên User giao tiếp với Presentation Layers (GUI) để gửi đi thông tin và yêu cầu. Tại layer này, các thông tin sẽ được kiểm tra, nếu OK chúng sẽ được chuyển xuống Business Logic Layer (BLL). - Tại BLL, các thông tin sẽ được nhào nặn, tính toán theo đúng yêu cầu đã g ửi, n ếu không cần đến Database thì BLL sẽ gửi trả kết quả về GUI, ngược lại nó sẽ đẩy dữ liệu (thông tin đã xử lý) xuống Data Access Layer (DAL). - DAL sẽ thao tác với Database và trả kết quả về cho BLL, BLL kiểm tra và gửi nó lên GUI để hiển thị cho người dùng. - Một khi gặp lỗi (các trường hợp không đúng dữ liệu) thì đang ở layer nào thì quăng lên trên layer cao hơn nó 1 bậc cho tới GUI thì sẽ quăng ra cho ng ười dùng bi ết - Các dữ liệu được trung chuyển giữa các Layer thông qua một đối tượng gọi là Data Transfer Object (DTO), đơn giản đây chỉ là các Class đại diện cho các đối tượng được lưu trữ trong Database. Tổ chức mô hình 3-Layer Có rất nhiều cách đặt tên cho các thành phần của 3 lớp như: Cách 1: GUI, BUS, DAL Cách 2: GUI, BLL, DAO, DTO Cách 3: Presentation, BLL, DAL
  7. Môn Các Hệ Thống Mã Nguồn Mở 7 Tổng quan mô hình MVC • MVC là một mô hình trong phát triển ph ần m ềm chuyên giành cho website.
  8. Môn Các Hệ Thống Mã Nguồn Mở 8 Các Thành Phần Trong MVC • Trong kiến trúc này, hệ thống được chia thành 3 t ầng tương ứng đúng với tên gọi của nó (Model – View – Controller). Ở đó nhiệm vụ cụ thể của các tầng được phân chia như sau: 1. Model (Tầng dữ liệu): là một đối tượng hoặc một tập hợp các đối tượng biểu diễn cho phần dữ liệu của chương trình. Nó được giao nhiệm vụ cung cấp dữ liệu cho cơ sở dữ liệu và lưu dữ liệu vào các kho chứa dữ liệu. Tất cả các nghiệp vụ logic được thực thi ở Model. Dữ liệu vào từ người dùng sẽ thông qua View đến Controller và được kiểm tra ở Model trước khi lưu vào cơ sở dữ liệu. Việc truy xuất, xác nhận, và lưu dữ liệu là một phần của Model
  9. Môn Các Hệ Thống Mã Nguồn Mở 9 Các Thành Phần Trong MVC • 2. View (Tầng giao diện): là phần giao diện với người dùng, bao gồm việc hiện dữ liệu ra màn hình, cung cấp các menu, nút bấm, hộp đối thoại, chọn lựa …, để người dùng có thể thêm, xóa. sửa, tìm kiếm và làm các thao tác khác đối với dữ liệu trong hệ thống.. Thông th ường, các thông tin cần hiển thị được lấy từ thành ph ần Models. 3. Controller (Tầng điều khiển): là phần điều khiển của ứng dụng, điều hướng các nhiệm vụ (task) đến đúng phương thức (method) có chức năng xử lý nhiệm vụ đó. Nó chịu trách nhiệm xử lý các tác động về mặt giao diện, các thao tác đối với models, và cuối cùng là chọn một view thích hợp để hiển thị ra màn hình.
  10. Môn Các Hệ Thống Mã Nguồn Mở 10 Ưu – nhược điểm • 1. Ưu điểm: 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. Giúp phát triển ứng dụng nhanh, đơn giản, dễ nâng cấp.. 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: Với các lớp được chia theo ba lớp như đã nói, 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.
  11. Môn Các Hệ Thống Mã Nguồn Mở 11 So sánh MVC và 3 lớp • 1. Điểm giống: Tách rời programming core/business logic ra khỏi những phụ thuộc về tài nguyên và môi trường. Presentation Layer (PL) thể hiện giống như chức năng của View và Controller. Business Layer (BL) và Data Access Layer (DL) thể hiện giống như chức năng của Model. Như thế nhìn ở góc độ này, thì MVC tương đương với 3-layer (tất nhiên có chồng chéo như hình vẽ)
  12. Môn Các Hệ Thống Mã Nguồn Mở 12 So sánh MVC và 3 lớp 2. Điểm khác: Trong mô hình 3 lớp, quá trình đi theo chiều dọc, bắt đầu từ PL, sang BL, rồi tới DL, và từ DL, chạy ngược lại BL rồi quay ra lại PL. Còn trong mô hình MVC, dữ liệu được nhận bởi View, View sẽ chuyển cho Controller cập nhật vào Model, rồi sau đó dữ liệu trong Model sẽ được đưa lại cho View mà không thông qua Controller, do vậy luồng xử lý này có hình tam giác.
  13. Môn Các Hệ Thống Mã Nguồn Mở 13 Xây dựng website PHP MVC đơn giản Xây dựng website bookstore theo mô hình MVC • • B1 : Xây dựng cấu trúc Website như sau • Thư mục controller chứa các thành phần điều kiển của ứng dụng • Thư mục model chứa các lớp đối tượng dữ liệu
  14. Môn Các Hệ Thống Mã Nguồn Mở 14 Xây dựng website PHP MVC đơn giảnXây dựng các đối tượng dữ liệu • B2 : • File Book.php chứa khai báo lớp dữ liệu Book
  15. Môn Các Hệ Thống Mã Nguồn Mở 15 Xây dựng website PHP MVC đơn giảnXây dựng các đối tượng dữ liệu • B2 : • File Database.php chứa các thao tác kết nối CSDL để lấy dữ liệu, ở đây để thao tác đơn, ví dụ chỉ demo có một mảng dữ liệu cho trước.
  16. Môn Các Hệ Thống Mã Nguồn Mở 16 Xây dựng website PHP MVC đơn giảnXây dựng các đối tượng view • B3 : • File booklist.php để xem danh sách book
  17. Môn Các Hệ Thống Mã Nguồn Mở 17 Xây dựng website PHP MVC đơn giảnXây dựng các đối tượng view • B3 : • File viewbook.php để xem một cuốn sách
  18. Môn Các Hệ Thống Mã Nguồn Mở 18 Xây dựng website PHP MVC đơn giảnXây dựng các đối tượng controller • B4 : • File controller.php điều khiển các luồng truy cập, • Khi Website có nhiều đối tượng dữ liệu, thì các controller sẽ được đặt tên theo từng loại dữ liệu. (vd : BookController, AuthorController…)
  19. Môn Các Hệ Thống Mã Nguồn Mở 19 Xây dựng website PHP MVC đơn giảnXây dựng trang chủ của website • B5 :
  20. Môn Các Hệ Thống Mã Nguồn Mở 20 Xây dựng website PHP MVC đơn giảnThực Thi Website • B6 :

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản