1 / 26

Nhóm sinh viên thực hiện: 1. Nguyễn Văn Toàn MSSV: LT11780 2. Nguyễn Cao Thụy Anh MSSV: 1088211

GIỚI THIỆU ZEND FRAMEWORK. Nhóm sinh viên thực hiện: 1. Nguyễn Văn Toàn MSSV: LT11780 2. Nguyễn Cao Thụy Anh MSSV: 1088211 3. Phạm Anh Tuấn MSSV: LT11788 4. Võ Thị Phương Trinh MSSV: LT11786 5. Trần Ánh Tuyết MSSV: LT11792 6. Nguyễn Thị Thúy Ái MSSV: LT11713

virote
Download Presentation

Nhóm sinh viên thực hiện: 1. Nguyễn Văn Toàn MSSV: LT11780 2. Nguyễn Cao Thụy Anh MSSV: 1088211

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GIỚI THIỆU ZEND FRAMEWORK Nhóm sinh viên thực hiện: 1. Nguyễn Văn Toàn MSSV: LT11780 2. Nguyễn Cao Thụy Anh MSSV: 1088211 3. Phạm Anh Tuấn MSSV: LT11788 4. Võ Thị Phương Trinh MSSV: LT11786 5. Trần Ánh Tuyết MSSV: LT11792 6. Nguyễn Thị Thúy Ái MSSV: LT11713 7. Nguyễn Trung Nghĩa MSSV: 1071463

  2. Framework là gì? Mô hình MVC trong Framework Zend Framework là gì? Mô hình MVC hoạt động trong Zend Framework NỘI DUNG

  3. 1. FRAMEWORK LÀ GÌ? Một cấu trúc mới của ngôn ngữ giúp phát triển các phần mềm. Một thư viện được xây dựng sẵn để người lập trình sử dụng. Các chuẩn để xây dựng một framework: MVC: có hỗ trợ Model-Control-View Multiple DB’s: làm việc được với nhiều loại database ORM: có hỗ trợ Object-Relation-Mapper Templates: có hỗ trợ cho template engine, AJAX, validation, caching Auth Module: có module xác thực người dùng Module: tích hợp các module tiện ích như PDF,RSS… EDPnew (Event Driven Programming): có hướng sự kiện

  4. Tăng tốc quá trình phát triển ứng dụng Giảm thời gian và sự nỗ lực để có được một dự án. Cung cấp sẵn các module cần thiết để xây dựng một project. Dễ nâng cấp, sửa chữa do có sự phân hóa rõ ràng của mô hình MVC 2. TẠI SAO CHÚNG TA PHẢI SỬ DỤNG FRAMEWORK

  5. 2. CÁC THÀNH PHẦN CƠ BẢN CỦA MỘT FRAMEWORK Code Library: thư viện source code giúp các lập trình viên tra cứu về lập trình. Hỗ trợ 30 ngôn ngữ lập trình: C#, Java, VB, PHP, Javascript… Scripting Language: sử dụng ngôn ngữ kịch bản API: sử dụng các hàm API xây dựng sẵn

  6. 3. CÁC PHP FRAMEWORK PHỔ BIẾN HIỆN NAY: Zend Framework: có một cộng đồng phát triển rộng lớn, và nó tập trung phát triển ứng dụng web theo phong cách 2.0. Nó có các tính năng mạnh mẽ, phải có kiến thức sâu rộng về PHP để có thể sử dụng nó. CakePHP: lựa chọn tuyệt vời cho các lập trình viên có kiến thức nâng cao về php. Một framework mạnh về khía cạnh rapid development, đẩy mạnh quá trình phát triển ứng dụng, có hệ thống hỗ trợ, tính đơn giản và môi trường mở cao Symfony: nhằm mục đích giúp đỡ các lập trình viên nâng cao hơn các website doanh nghiệp, là một PHP framework mã nguồn mở, có đầy đủ tính năng cần thiết, nhưng lại hạn chế về mặt tốc độ so với các framework khác.

  7. . CÁC PHP FRAMEWORK PHỔ BIẾN HIỆN NAY(tt) CodeIgniter: dễ hiểu, dễ sử dụng, hiệu suất cao, lý tưởng cho việc xây dựng các ứng dụng lưu trữ, chia sẻ dữ liệu. Phù hợp cho người mới làm quen với framework. Seagull: một framework cực kỳ dễ sử dụng cho người mới cũng như chuyên gia về PHP, cung cấp mẫu ứng dụng tùy chỉnh để phù hợp với nhu cầu, cung cấp các tùy chọn máy chủ để xây dựng ứng dụng web nhanh và dễ dàng.

  8. II. MÔ HÌNH MVC TRONG FRAMEWORK

  9. MVC là một mô hình trong lập trình, cho phép tách biết các mã nghiệp vụ (bussiness logic) và giao diện (UI) thành cách thành phần riêng biệt. Model :đượ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 View : View hiển thị các thông tin cho người dùng của ứng dụng và được giao nhiệm vụ cho việc nhận các dữ liệu vào từ người dùng, gửi đi các yêu cầu đến controller, sau đó là nhận lại các phản hồi từ controller và hiển kết quả cho người dùng. Các trang HTML, JSP, các thư viện thẻ và các file nguồn là một phần của thành phần View. II. MÔ HÌNH MVC TRONG FRAMEWORK (tt)

  10. - Trong các web framework, nó gồm 2 phần chính:+ Template file định nghĩa cấu trúc và cách thức trình bày dữ liệu cho user. Ví dụ như layout, color, windows …+ Logic xử lý cách áp dụng dữ liệu vào cấu trúc trình bày. Logic này có thể bao gồm việc kiểm tra định dạng dữ liệu, chuyển đổi định dạng dữ liệu sang một sạng dữ liệu trung gian, lựa chọn một cấu trúc hiện thị phù hợp. Controller : controller đảm nhiệm việc cập nhật bộ phận hiển thị (View) khi cần thiết. Bộ điều khiển này nhận dữ liệu nhập từ người dùng, truy xuất các thông tin cần thiết từ mô hình trong (Model), và cập nhật thích hợp phần hiển thị (View). Giao diện với người sử dụng phần mềm được thiết lập nhờ sự tương tác qua lại giữa View và Controller: hai bộ phận này chính là phần trình bày bên ngoài của đối tượng biểu diễn bên trong. II. MÔ HÌNH MVC TRONG FRAMEWORK (tt)

  11.  Giống nhau: Cả hai đều để 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. Trong một ứng dụng nhỏ, MVC thể hiện thế nào? Presentation thể hiện giống như chức năng của View và Controller. Business và Database 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ẽ) III. SO SÁNH MÔ HÌNH MVC & MÔ HÌNH 3 LỚP:

  12. III. SO SÁNH MÔ HÌNH MVC & MÔ HÌNH 3 LỚP(tt)

  13.  Khác nhau: Trong 3-layers, quá trình đi theo chiều dọc, bắt đầu từ Presentation, sang BL, rồi tới Data, và từ Data, chạy ngược lại BL rồi quay ra lại Presentation III. SO SÁNH MÔ HÌNH MVC & MÔ HÌNH 3 LỚP(tt)

  14. Còn trong mẫu Supervising Controller, 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. III. SO SÁNH MÔ HÌNH MVC & MÔ HÌNH 3 LỚP(tt)

  15. Zend Framework là một Framework hoàn chỉnh chứa đầy đủ mọi thứ chúng ta cần để phát triển úng dụng web. Nó bao gồm cả thành phần mô hình kiến trúc MVC để đảm bảo website được tổ chức theo cách tốt nhất. Đi cùng với thành phần kiến trúc MVC có các thành phần khác như authentication, searching, localization, PDF, email và web services Zend Framework là sản phẩm framework mã nguồn mở được phát triển trên nền PHP 5.0 theo chuẩn hướng đối tượng, Zend Framework là tập trung vào xây dựng web an toàn hơn, đáng tin cậy, và hiện đại 2,0 ứng dụng và dịch vụ web, và các API phổ biến rộng rãi tiêu thụ từ các nhà cung cấp hàng đầu như Google , Amazon , Yahoo! , Flickr , cũng như các nhà cung cấp API và biên mục như StrikeIron và ProgrammableWebZend Framwork là framework theo mô hình MVC.Zend Framework có hỗ trợ làm việc với Tempalate engine kết hợp cùng tầng View IV. ZEND FRAMEWORK LÀ GÌ?

  16. - Zend Framework được tổ chức của công ty Zend đưa vào xây dựng vào đầu năm 2005, trong khi nhiều framework mới như Ruby on Rails và the Spring - Framework đã được phổ biến trong xây dựng web động. Phiên bản ZendFramework đầu tiên chính thức ra mắt công khai tại hội nghị đầu tiên của Zend vào tháng 10/2005. Đến 1/7/2007 Zend đã cho ra đời phiên bản zendFramework 1.0. Đến nay, Zend cho ra mắt phiên bản Zend Framework 1.11 là phiên bản mới nhất hiện nay. 1. QUÁ TRÌNH PHÁT TRIỂN CỦA ZEND FRAMEWORK

  17. Zend Framework 1.11 ( mới nhất ) Zend Framework 1.10 Zend Framework 1.9 Zend Framework 1.8 Zend Framework 1.7 Zend Framework 1.6 Zend Framework 1.5 Zend Framework 1.0 Zend Framework 0.9 Zend Framework 0.8 Zend Framework 0.6 CÁC PHIÊN BẢN

  18. ƯU ĐIỂM: - ZF được viết theo kiểu OOP nên nó thừa hưởng các thế mạnh của kiểu viết này. Các lớp của ZF được BA (Business Analysis) rất chuẩn và khi cần mở rộng bạn có thể dùng thể dùng tính chất thừa kế của OOP. Nói chung là chúng ta không phải chỉnh sửa core của ZF.Hầu như các version mới của ZF ko có nhiều thay đổi trong core nên ta có thể dễ dàng update. - ZF tích hợp được gần như tất cả các thư viện PHP và các CMS khác để sử dụng. VD: Smarty - Pear - FCKEditer - Drupal ..Cách viết của ZF rất thân thiện và đơn giản. Tích hợp những mới nhất của lập trình web như: JSON - Search - Syndication - Web Services... - Bảo mật của các ứng dụng rất tốt nên tránh được các lỗi thường gặp trong các ứng dụng viết bằng PHP thường. - ZF được sử dụng trong các dự án lớn và có kế hoạch phát triển dài lâu. 2. ƯU VÀ KHUYẾT ĐIỂM CỦA ZEND FRAMEWORK

  19. 2. ƯU VÀ KHUYẾT ĐIỂM CỦA ZEND FRAMEWORK(tt) KHUYẾT ĐIỂM: - Mất nhiều thời gian để tìm hiểu về thư viện của ZF- Một số lớp chưa ổn định, có sự thay đổi, gây khó khăn cho người sử dụng khi cập nhật các phiên bản.

  20. 3. MÔ HÌNH MVC TRONG ZEND FRAMEWORK

  21. 3. MÔ HÌNH MVC TRONG ZEND FRAMEWORK (tt) 1. Model- Thành phần model được chúng ta xây dựng thành các lớp kế thừa từ lớp Zend_Db_Table hoặc Zend_Db_table_Abstract được đặt trong thư mục application/models của ứng dụng. Mỗi lớp sẽ đảm nhận việc kết nối và thao tác đến table trong cơ sở dữ liệu.

  22. 3. MÔ HÌNH MVC TRONG ZEND FRAMEWORK (tt) 2. ViewThành phần của view được đặt trong thư mục application/views. Trong thư mục views có 3 thành phần :+ scripts : Chứa các thư mục gồm các file ánh xạ đến các controller/action để hiển thị trang giao diện tương ứng.+ helpers : Trong thư mục này chứa các lớp mà chúng ta tạo ra và các lớp này sẽ được nạp tự động cho đối tượng Zend_View thông qua Zend_View_Helper để giúp chúng ta dễ dàng gọi đến hàm được xây dựng trong lớp này mà không cần phải khai báo trước vì nó được xem là một thành phần trong thư viện của Zend.+ filers : Tương tự như helpers, thành phần filters chứa các lớp giúp cho chúng ta có thể thay đổi hoặc xóa những dữ liệu không mong muốn trong quá trình nhập liệu thông qua bộ lọc này.

  23. 3. MÔ HÌNH MVC TRONG ZEND FRAMEWORK (tt) 3. Controller - Controller có nhiệm vụ điều hành trang web của bạn. Một trang web có thể có nhiều module, một module có thể có nhiều controller, một controller gồm có nhiều action.- Zend Framework sử dụng đối tượng Front Controller để quản lý các Request được gửi tới Web Server. Và dựa trên Request đó nó sẽ gọi các lớp xử lý Model và trả về kết quả trình bày với các lớp View. index.php index.php là một file rất quan trọng trong website,nó có nhiệm vụ đón đầu tất cả các request vào, sau đó khởi tạo controller và dispatch request đến controller tương ứng.bootstrap.php : bootstrap.php có nhiệm vụ khởi tạo các đối tượng toàn cục sử dụng cho website, Bẫy lỗi của ứng dụng và đưa về cho errorController xử lý.

  24. CƠ CHẾ HOẠT ĐỘNG CỦA ZEND FRAMEWORK

  25. Khi có request từ người dùng thì lập tức bootstrap file (index.php) sẽ đón nhận request này và giao nhiệm vụ điều khiển hướng truy cập cho Front Controller, Front Controller sẽ chọn và gọi action tương ứng. Sau đó action này sẽ tương tác với Zend_Db_Table (Model) và trả kết quả về cho Zend_View (View). Cuối cùng, hiển thị kết quả ra trình duyệt. Tóm lại, Zend Framework sử dụng kiến trúc MVC để xây dựng ứng dụng website giúp cho việc nâng cấp và bảo trì ứng dụng một cách dễ dàng. CƠ CHẾ HOẠT ĐỘNG CỦA ZEND FRAMEWORK

  26. XIN CHÂN THÀNH CẢM ƠN!

More Related