1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Các thủ thuật (nguyên tắc) sáng tạo được dùng trong zend framework

13 7 0

Đ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

0 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH ĐẠI HỌC CÔNG NGHỆ THÔNG TIN PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC ĐỀ TÀI: CÁC THỦ THUẬT (NGUYÊN TẮC) SÁNG TẠO ĐƯỢC DÙNG TRONG ZEND FRAMEWORK Giảng viên hướng dẫn: GS TSKH Hoàng Kiếm Học viên thực hiện: Ngơ Hải Linh MSHV: CH1101019 Lớp cao học khóa TP Hồ Chí Minh, tháng 3/2012 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework MỤC LỤC Mở đầu I Giới thiệu Zend Framework II Mơ hình MVC III Các thành phần (components) IV Các nguyên tắc sáng tạo dùng Zend Framework Kết luận 11 Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework MỞ ĐẦU Trong thời đại công nghệ phát triển nhanh chóng nay, việc ứng dụng công nghệ thông tin vào lĩnh vực nhu cầu cấp thiết tất yếu Đặc biệt lĩnh vực thương mại điện tử, quản lý, số lượng thông tin liệu cần quản lý tăng lên gấp bội, dẫn tới công việc quản lý trở nên phức tạp, khó khăn Do đó, việc ứng dụng cơng nghệ thơng tin lại cấp thiết hơn, với hỗ trợ phần mềm quản lý, giúp quản lý việc dễ dàng, nhanh chóng, đáp ứng yêu cầu lưu trữ truy xuất liệu, tiết kiệm thời gian chi phí cho cơng việc Đối với nhà phát triển phần mềm, công việc quản lý, sửa lỗi mã nguồn, tài nguyên… với dự án phần mềm lớn khó khăn Khối lượng modules, resources nhiều theo độ lớn dự án Do đó, trước bắt đầu viết phần mềm, nên định hướng tảng làm khung sườn cho dự án .Net Framework tảng lập trình hãng Microsoft phát triển quen thuộc với Nhưng viết này, xin giới thiệu tảng mã nguồn mở khác, Zend Framework Zend Framework xây dựng tảng lập trình hướng đối tượng nên thừa kế, quản lý, nâng cấp ứng dụng dễ dàng Mơ hình MVC khơng theo chuẩn MVC Zend Framework linh hoạt giúp tùy biến cấu hình ứng dụng theo ý muốn Phiên Zend Framework 1.11 gần hồn chỉnh khơng thay đổi nhiều Hiện nay, thị trường phần mềm lớn Nhật, Mỹ, Châu Âu… chọn Zend Framework để xây dựng ứng họ Thông qua buổi giảng dạy hướng dẫn thầy Hồng Kiếm, tơi biết thêm hiểu cách vận dụng thủ thuật (nguyên tắc) sáng tạo trình giải toán, vấn đề mang tính khoa học Do đó, tơi xin phân tích thủ thuật (nguyên tắc) sáng tạo áp dụng Zend Framework Do khả kiến thức có hạn, nên viết dừng mức Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework khái quát số thủ thuật (nguyên tắc) có Zend Framework Tôi xin chân thành cảm ơn thầy Hoàng Kiếm giảng dạy hướng dẫn để hoàn thành viết bổ ích lý thú Nội dung viết phần mở đầu kết luận, có mục sau: I Giới thiệu Zend Framework II Mơ hình MVC III Các thành phần (components) IV Các nguyên tắc sáng tạo dùng Zend Framework Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework I Giới thiệu Zend Framework Zend Framework tảng mã nguồn mở, ứng dụng web hướng đối tượng sử dụng PHP Zend Framework thường gọi “thư viện thành phần” (component library), có nhiều thành phần linh động mà bạn sử dụng nhiều cách độc lập Tuy nhiên, Zend Framework dựa theo mơ hình Model-View-Controller (MVC) sử dụng để thiết lập cấu trúc cho ứng dụng Zend Framework Giống PHP Framework khác Zend Framework đời, thời kỳ lúc khó khăn nhiều thử thách với việc Zend Framework khơng ngoại lệ Trong thời gian đầu, Zend Framework có thư viện xử lý có nhiều khuyết điểm Càng sau Zend Framework hoàn thiện bổ xung thư viện hữu ích cho ứng dụng web Và lý có nhiều cơng ty lớn IGN.com, RottenTomatoes.com, AskMen.com and IBM… chọn Zend Framework làm tảng phát triển ứng dụng trực tuyến Đến phiên 1.8 gần thư viện Zend Framework trở nên hồn chỉnh khơng thay đổi nhiều Từ tạo tảng cho phát triển nhanh thư viện Zend Framework Hiện nay, thị trường phần mềm lớn Nhật, Mỹ, Châu Âu… chọn Zend Framework để xây dựng ứng họ Phiên ổn định 1.11, nhà phát triển Zend Framework nâng cấp lên phiên Hiện nay, họ cung cấp 2.0.0 beta để cộng đồng sử dụng góp ý Điểm bật Zend Framework: - Tất thành phần (component) viết theo hướng đối tượng PHP5 theo chuẩn E_STRICT - Kiến trúc Use-at-will với thành phần linh hoạt phụ thuộc lẫn - Mơ hình MVC mở rộng hỗ trợ tốt giao diện (layouts, templates) Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework - Hỗ trợ nhiều hệ sở liệu, là: MariaDB, MySQL, Oracle, IBM DB2, Microsoft SQL Server, PostgreSQL, SQLite, Informix Dynamic Server - Gửi/nhận email thông qua mbox, Maildir, POP3 and IMAP4 - Hệ thống phụ quản lý nhớ đệm cách linh hoạt với nhiều loại backends, nhớ hay tập tin hệ thống II Mô hình MVC Mơ hình MVC trở thành chuẩn thiết kế ứng dụng web Hầu hết ứng dụng web theo mơ hình lớp (3 layers): lớp giao diện người dùng (presentation), lớp nghiệp vụ (business logic) lớp liệu (data access) Mơ hình MVC giúp cho người phát triển phần mềm cô lập lớp nghiệp vụ giao diện người dùng cách rõ ràng Phần mềm phát triển theo mô hình MVC tạo nhiều thuận lợi cho việc bảo trì lớp nghiệp vụ giao diện liên quan với nhau, đặc biệt có nhiều người phát triển làm dự án Mơ hình MVC Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework - Model: phần ứng dụng, chứa chức khái niệm trừu tượng (abstraction) Lớp liệu số nghiệp vụ viết - View: lớp giao diện người dùng Dữ liệu truyền từ Controller tới để xuất số định dạng HTML để hiển thị cho người xem - Controller: quản lý trao đổi lớp liệu lớp nghiệp vụ liên quan đến mô hình Nghĩa là, làm nhiệm vụ xử lý request từ url form để thao tác trực tiếp với Model, sau dùng View để hiển thị III Các thành phần (components) Model-View-Controller (MVC) - Zend_Application, Zend_Application_Bootstrap, Zend_Application_Module, Zend_Application_Resource - Zend_Controller_Front, Zend_Controller_Action, Zend_Controller_Dispatcher, Zend_Controller_Plugin, Zend_Controller_Router - Zend_Form - Zend_Layout, Zend_View, Zend_View_Filter, Zend_View_Helper Tooling Rapid Application Development (RAD) - Zend_CodeGenerator - Zend_Reflection - Zend_Tool_Framework, Zend_Tool_Project Database - Zend_Db, Zend_Db_Adapter, Zend_Db_Profiler, Zend_Db_Select, Zend_Db_Table Internationalization (i18n) Localization (I10n) - Zend_Currency Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework - Zend_Date - Zend_Locale - Zend_Measure - Zend_Translate Quản lý Authentication, Authorization Session - Zend_Acl: quản lý xác thực người dùng - Zend_Auth: quản lý phân quyền - Zend_Session Web web service - Consuming services: Zend_Feed, Zend_Gdata, Zend_Http_Client, Zend_Rest_Client, Zend_Service, Zend_XmlRpc_Client - Exposing services: Zend_Amf_Server, Zend_Json_Server, Zend_Server_Definition, Zend_Server_Reflection, Zend_Rest_Server, Zend_Soap_Server, Zend_XmlRpc_Server Mail, Formats Search - Zend_Json - Zend_Mail, Zend_Mime - Zend_Pdf - Zend_Search_Lucene Core - Zend_Cache, Zend_Config, Zend_Console_Getopt, Zend_Debug, Zend_Filter, Zend_Loader, Zend_Loader_Autoloader, Zend_Log, Zend_Memory, Zend_Registry, Zend_Validate, Zend_Version IV Các nguyên tắc sáng tạo dùng Zend Framework Trong trình phát triển, cải tiến, Zend dùng nguyên tắc sáng tạo sau: - Nguyên tắc phân nhỏ - Nguyên tắc tách khỏi Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework - Nguyên tắc kết hợp - Nguyên tắc vạn - Nguyên tắc chứa - Nguyên tắc thực sơ - Nguyên tắc dự phòng (áp dụng ứng dụng thực tế: lưu liệu) - Nguyên tắc thay đổi màu sắc (áp dụng ứng dụng thực tế: thay đổi, làm giao diện) - Nguyên tắc linh động - Nguyên tắc tự phục vụ (áp dụng ứng dụng thực tế: tự động backup liệu vào thời gian định sẵn; tự động gửi thông tin mới, báo giá, sản phẩm qua email khách hàng yêu cầu…) Nguyên tắc phân nhỏ Zend Framework tách nhỏ thành phần (components) riêng biệt, thêm bớt hay nhiều thành phần cách dễ dàng Trong ứng dụng web thực tế viết theo mơ hình MVC, tách biệt modules, templates với Điều giúp nhà phát triển ứng dụng việc quản lý, sửa lỗi, nâng cấp… sản phẩm Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework Cấu trúc ứng dụng nhiều modules, nhiều templates Nguyên tắc tách khỏi Trong trình sử dụng phần mềm, có nhu cầu thay đổi giao diện để làm website Khi đó, vấn đề đặt cho nhà phát triển phần mềm là: Làm thay đổi giao diện tránh phải viết mã nguồn (code) lại tối đa Do vậy, mơ hình MVC Zend Framework giúp cho người phát triển phần mềm cô lập lớp nghiệp vụ giao diện người dùng Trong View tách phần: - Views/scripts: chứa tag HTML để hiển thị giao diện người dùng - Views/helpers: chứa hàm xử lý, giúp cho việc hiển thị nội dung website phần Views/scripts - Views/filters: tương tự helpers, thay đổi xóa liệu khơng mong muốn q trình nhập liệu thơng qua lọc Phương pháp nghiên cứu khoa học tin học Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework Khi cần thay đổi giao diện người dùng, cần chỉnh sửa phần Views/scripts, mà viết lại phần Views/helpers Views/filters Nguyên tắc kết hợp Zend Framework thiết kế thành phần (components) riêng biệt nhau, cần thiết ta phải kết hợp chúng lại với Khi tạo trang web đăng ký thông tin người dùng, sử dụng lớp Zend_Form (tạo textbox, checkbox, button…), Zend_Captcha (chống spam), Zend_Acl (xác thực người dùng đăng nhập)… Nguyên tắc vạn Trong lớp Zend_Form, chức tạo textbox, checkbox, button, radio… đồng thời kiểm tra liệu người dùng nhập vào Nếu người dùng nhập chưa theo mẫu xuất thơng báo lỗi yêu cầu họ nhập lại Ví dụ: kiểm tra độ dài chuỗi, kiểm tra email… Nguyên tắc chứa Trong lớp Zend_Db chứa lớp liên quan, hỗ trợ việc kết nối, xử lý câu lệnh truy vấn, giám sát truy vấn liệu như: Zend_Db_Adapter, Zend_Db_Profiler, Zend_Db_Select, Zend_Db_Table Trong lớp Zend_Db_Adapter chứa lớp xử lý việc kết nối tới nhiều hệ sở liệu khác như: MySQL, SQL Server, DB2, Oracle, SQLite…Trong lớp Zend_Db_Adapter_Sqlsrv chứa có lớp xử lý câu truy vấn tương ứng với Zend_Db_Statement_Sqlsrv… Nguyên tắc thực sơ Để tạo trang web đăng nhập, làm từ đầu: trước tiên viết đoạn HTML (input tag), kiểm tra liệu đầu vào (do người dùng nhập), xuất thông báo người dùng nhập sai Còn Zend Framework làm hết bước này, cần gọi hàm công việc cịn lại Zend làm hết Ví dụ class tạo form đăng nhập: Phương pháp nghiên cứu khoa học tin học Trang 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework class Front_Form_User_Login extends Zend_Form { public function init() { // create a textbox input[type=text] $this->addElement('text', 'email', array( 'filters' => array('StringTrim', 'StringToLower'), 'validators' => array( array('StringLength', true, array(3, 128)), array('EmailAddress'), ), 'required' => true, 'label' => 'Email', )); // create a textbox input[type=password] $this->addElement('password', 'passwd', array( 'filters' => array('StringTrim'), 'validators' => array( array('NotEmpty', true, array( 'messages' => array('isEmpty' => 'Custom: No Value Entered') )), array('StringLength', true, array(6, 128, 'messages' => array('stringLengthTooShort' => "'%value%' is less than %min%" )) ) ), 'required' => true, 'label' => 'Password', )); $this->addElement('submit', 'login', array( 'required' => false, 'ignore' => true, 'label' => 'Login', )); // And finally add some CSRF protection $this->addElement('hash', 'csrf', array( 'ignore' => true, )); $this->setDecorators(array( 'FormElements', array('HtmlTag', array('tag' => 'dl', 'class' => 'zend_form')), array('Description', array('placement' => 'prepend', 'class' => 'error')), 'Form' )); } } Phương pháp nghiên cứu khoa học tin học Trang 11 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework Nguyên tắc linh động Zend Framework xem “thư viện thành phần” nên việc thêm bớt thành phần đơn giản Zend Framework xây dựng tảng lập trình hướng đối tượng nên thừa kế, nâng cấp ứng dụng dễ dàng, linh động KẾT LUẬN Qua viết cho có nhìn khái qt Zend Framework mơ hình MVC Nó sản phẩm trí tuệ nhiều chuyên gia, đồng thời qua đó, thấy số nguyên tắc (thủ thuật) sáng tạo vận dụng Trong chúng ta, hẳn sử dụng 40 nguyên tắc sáng tạo học tập đời sống Tuy sử dụng nguyên tắc cách vơ tình hay ngẫu nhiên Do đó, việc nắm vững kiến thức 40 nguyên tắc sáng tạo điều thiết thực Khi đó, giúp chủ động tư sáng tạo hay sinh hoạt đời sống Nó coi chìa khố để mở cánh cửa thành cơng Tài liệu tham khảo chính: (1) Slides giảng mơn ‘‘PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC’’ – GS.TSKH Hoàng Kiếm (2) 40 Thủ thuật (nguyên tắc) sáng tạo – GS.TSKH Phan Dũng (3) www.framework.zend.com Phương pháp nghiên cứu khoa học tin học Trang 12 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework I Giới thiệu Zend Framework Zend Framework tảng mã nguồn mở, ứng dụng web hướng đối tượng sử dụng PHP Zend Framework thường... Zend_ Console_Getopt, Zend_ Debug, Zend_ Filter, Zend_ Loader, Zend_ Loader_Autoloader, Zend_ Log, Zend_ Memory, Zend_ Registry, Zend_ Validate, Zend_ Version IV Các nguyên tắc sáng tạo dùng Zend Framework Trong trình... CHAT LUONG download : add luanvanchat@agmail.com Các thủ thuật (nguyên tắc) sáng tạo dùng Zend Framework khái quát số thủ thuật (ngun tắc) có Zend Framework Tơi xin chân thành cảm ơn thầy Hoàng

Ngày đăng: 01/11/2022, 15:17

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN