Bài giảng mô hình MVC và Zend Framework

62 121 0
Bài giảng mô hình MVC và Zend Framework

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRUNG TÂM TIN HỌC ĐẠI HỌC KHOA HỌC TỰ NHIÊN-TP.HCM LẬP TRÌNH PHP NÂNG CAO MƠ HÌNH MVC + ZF2 CuuDuongThanCong.com https://fb.com/tailieudientucntt TRUNG TÂM TIN HỌC ĐẠI HỌC KHOA HỌC TỰ NHIÊN-TP.HCM Bài 1: Mơ hình MVC Lịch sử MVC Giới thiệu mơ hình MVC Ưu điểm nhược điểm mơ hình MVC Lý ý nên làm việc ệ theo mơ hình MVC CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Lị Lịch h sử MVC  Được đưa nhà nghiên cứu phòng thí nghiệm Xerox PARC Palo Alto, dựa Ngơn ngữ lập trình Smalltalk - lập p trình theo hướng g đối tượng g g giao điện đồ họa GUI, công bố cuối năm 70 đầu năm 80  Thế ế hệ tiếp ế theo MVC xuất ấ với hệ điều ề hành NeXT phần mềm  Kiến Kiế ttrúc ú ngày đ phát hát ttriển iể àh hoàn thiệ thiện nhằm giải vấn đề phát sinh giải pháp cho trình phát triển phần mềm mềm Vì sau đó, MVC framework đời dựa mơ hình MVC như: CodeIgniter, g , Zend… CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Giới thiệu thiệ mơ hình hì h MVC  MVC (Model – View - Controller): design pattern, theo hướng đối tượng, cho phép developer ể chia nhỏ ỏ code ủ p thành phần: – Model: trì liệu business rule – View: hiển thị liệu thành phần giao diện người dùng – Controller: điều khiển kiện người dùng có ảnh hưởng đến Model View CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Giới thiệu thiệ mơ hình hì h MVC Người dùng tương tác (bằng ằ cách click vào link submit form…) controller điều khiển hoạt động đưa hành động thích hợp (thao tác tới model cập nhật hật view) i ) CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Giới thiệu thiệ mơ hình hì h MVC  Trong đó: – Controller: gửi yêu cầu đến View liên kết để thay đổi hiển thị View, gửi yêu cầu đến model để cập nhật trạng thái model – Model: thông g báo đến View Controller có liên quan có thay đổi trạng thái Thơng báo cho phép View tạo hiển thị cập nhật cho h phép Controller C t ll thay th đổi command d – View: u cầu Model gửi thơng tin mà cần để tạo hiển thị View View CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Ưu Ư điểm điể nhược h điể điểm ủ mơ hình hì h MVC  Ưu điểm – Phát triển phần mềm: chuyên nghiệp hóa, chia cơng việc cho nhiều nhóm chun mơn khác nhau: nhóm thiết kế, nhóm lập trình, nhóm 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ì: trì Với lớp đ ợc phân chia, chia thành phần hệ thống dễ thay đổi, thay đổi ợ lập ập g g lớp, p ặ ảnh hưởng g đến lớp p gần kề nó, khơng làm ảnh hưởng chương trình – Mở rộng: ộ Việ thêm Việc thê chức ă vào cho h từ lớp lớ ẽ dễ dàng phân chia theo cách khác CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Ưu Ư điểm điể nhược h điể điểm ủ mô ô hình hì h MVC  Nhược điểm – Thích hợp với dự án vừa lớn dự án nhỏ ỏ việc áp dụng mơ hình MVC gây cồng kềnh, tốn thời gian trình phát triển ể – Tốn thời gian trung chuyển liệu lớp CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Lý d nên ê làm việc iệ theo th mơ hình hì h MVC  Vì mơ hình MVC chia ứng dụng thành M, V C nên developer tạo nhiều ề view nhiều ề cotroller cho gp phải đối mặt với việc model mà không thay đổi thiết kế model  => Giúp cho việc trì, trì di chuyển tổ chức ứng dụng dễ dàng CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Lý d nên ê làm việc iệ theo th mơ hình hì h MVC  Đối với người việc xây dựng ứng dụng dựa mơ hình MVC phức tạp lãng phí cơng việc y dựng g dự án lớn, y nhiên “bí xây mật” MVC pattern không nằm chỗ viết code mà chỗ trì nó  Cho phép sửa đổi code mà không ảnh h nhiều hưởng hiề đến đế thành h phần hầ khác 10 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model // ngắt kết nối function disconnect() { mysql_close( l l ( $thi $this->_connection > ti )); } CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model  Các bước thực hiện: – Bước 2: Xây dựng lớp Model cần thiết cho ứng dụng lớp Model đối ố tượng Database thuộc tính lớp Trong lớp Model có phương thức khởi tạo Model phương thức cần thiết lấy ấ hiển ể thị thông tin, cập nhật thông tin, thêm thông tin hay xóa thơng tin… 10 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model  Ví dụ: Xây dựng ứng dụng để hiển thị thông tin sản phẩm quần áo Shop Bibi sau: Khi người dùng đến ế thăm g tin tất Website hiển thị thơng sản phẩm quần áo, người dùng chọn cụ thể sản phẩm hiển thị thơng tin sản phẩm chọn chọn 11 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Danh mục sản phẩm Sản phẩm chọn 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model  Phân tích yêu cầu: Theo yêu cầu cần phải xây dựng ProductModel có: – Phương thức khởi tạo – Phương thức lấy danh sách sản phẩm – Phương Ph thứ lấy thức lấ ột sản ả phẩm hẩ theo th khóa khó chọn 13 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model // khai báo khởi tạo lớp ProductModel class ProductModel { var $dao; function ProductModel() { $ h $this->dao d = new Database('localhost', b ( l lh 'root', '', 'ql_quan_ao'); } } 14 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model // lấy tất sản phẩm function listOfProducts() { $this->dao->setQuery("Select * from products, type where products.type_id = type.type_id"); $result = $this->dao->loadAllObject(); return $result; } 15 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d M d l Model // lấy sản phẩm dựa id sản phẩm chọn function loadAProduct($id) { $this->dao->setQuery("Select * from products where id = " $id); $result = $this->dao->loadAnObject(); $this >dao >loadAnObject(); return $result; } 16 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d Vi View  Xây dựng View cần thiết cho ứng dụng, tương tự cách xây dựng View giới thiệu trước 17 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d Vi View  Ví dụ: nêu phần Xây dựng Model  Phân tích u cầu: với u cầu cần phải có View: – View hiển thị sản phẩm – View Vi hiể thị chi hiển hi tiết ột sản ả phẩm hẩ 18 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d C t ll Controller  Xây dựng Controller cần thiết cho ứng dụng, tương tự cách xây dựng C Controller giới thiệu trước 19 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d C t ll Controller  Ví dụ: nêu phần Xây dựng Model  Phân tích yêu cầu: – Với yêu cầu cần xây dựng lớp ProductController gồm phương thức: • Gọi sử dụng model view xây dựng 20 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d C t ll Controller class ProductController { public $product_model; public function construct() { $this->product_model = new ProductModel(); } 21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC Xây Xâ dựng d C t ll Controller public function invoke() { if (!isset($_GET['id'])) { $products = $this->product_model-> listOfProducts(); include 'view/list_Product.php'; } if (isset($ (isset($_GET[ GET['id'])) id ])) { $product = $this->product_model-> loadAProd ct($ GET['id']) loadAProduct($_GET['id']); include 'view/productView.php'; } } } 22 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3: Xây dựng ứng dụng có sử dụng CSDLtheo mơ hình MVC 23 CuuDuongThanCong.com https://fb.com/tailieudientucntt ... NHIÊN-TP.HCM Bài 1: Mơ hình MVC Lịch sử MVC Giới thiệu mơ hình MVC Ưu điểm nhược điểm mơ hình MVC Lý ý nên làm việc ệ theo mơ hình MVC CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình. .. sau đó, MVC framework đời dựa mơ hình MVC như: CodeIgniter, g , Zend CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 1: Mơ hình MVC Giới thiệu thiệ mơ hình hì h MVC  MVC (Model –... https://fb.com/tailieudientucntt Bài 2: Xây dựng ứng dụng theo mơ hình MVC Mơ hình hì h MVC CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 2: Xây dựng ứng dụng theo mơ hình MVC Xây Xâ dựng d M

Ngày đăng: 27/12/2019, 19:26

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan