Nghiên cứu mô hình thực thể Model-View-Controller ứng dụng xây dựng trên mã nguồn mở Joomla pptx

31 817 10
Nghiên cứu mô hình thực thể Model-View-Controller ứng dụng xây dựng trên mã nguồn mở Joomla pptx

Đ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

Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla LỜI CẢM ƠN Sau một thời gian thực tập tại Trung tâm CNTT & TT Hà Tĩnh dưới sự hướng dẫn của Cán bộ Lê Viết Kiên Trung tâm, cùng với sự giúp đỡ của ban Giám đốc và tất cả nhân viên trong trung tâm, chúng em đã thu được những kiến thức về chuyên môn lẫn kinh nghiệm hết sức quý báu. Em xin chân thành cảm ơn Ban Chủ Nhiệm khoa Công nghệ thông tin trường Đại học Hà Tĩnh đã tạo mọi điều kiện cho chúng em đi thực tập. Chúng em xin cảm ơn ban Giám đốc Trung tâm CNTT & TT Hà Tĩnh đã tiếp nhận, hướng dẫn tận tình cho chúng em trong suốt quá trình hoàn thành khóa thực tập. Chúng em cũng chân thành cảm ơn toàn thể anh chị trong các phòng ban trong trung tâm đã hướng dẫn, cung cấp tài liệu để em hoàn thành công việc hiện thực đề tài của chúng em. Trong quá trình thực tập, một sinh viên như chúng em chắc chắn sẽ không tránh khỏi những sai sót, rất mong quý trung tâm thông cảm bỏ qua cho chúng em. Một lần nữa chúng em xin chân thành cảm ơn! Hà Tĩnh, ngày 04 tháng 05 năm 2013 Nhóm sinh viên thực tập 1.Trần Văn Lực. 2. Nilavon-Phonmachac. MỤC LỤC SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 1 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla DANH SÁCH HÌNH ẢNH Với sự phát triển nhảy vọt của công nghệ thông tin hiện nay, Internet ngày càng giữ vai trò quan trọng trong các lĩnh vực khoa học kĩ thuật và đời sống Với mạng Internet, tin học thật sự tạo nên một cuộc cách mạng trao đổi thông tin trong mọi lĩnh vực văn hóa, xã hội, chính trị, kinh tế Trong thời đại ngày nay, thời đại “người người làm Web, nhà nhà làm Web” thì việc có một Website để quảng bá công ty hay một Website tin tức không còn là điều gì quá khó khăn nữa. Bây giờ người ta thường thiết kế web sử dụng mã nguồn mở (Open Source). Open Source: phần mềm có nguồn mở Free software: phần mềm miễn phí, đôi khi free software được dùng với ý nghĩa bao gồm cả open-source software và free software. Tiện ích Open Source mang lại chính là quyền tự do sử dụng chương trình cho mọi mục đích, quyền tự do để nghiên cứu cấu trúc của chương trình, chỉnh sữa phù hợp với nhu cầu, truy cập vào nguồn, quyền tự do phân phối lại SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 2 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla các phiên bản cho nhiều người, quyền tự do cải tiến chương trình và phát hành những bản cải tiến vì mục đích công cộng. Với mong muốn tìm hiểu và có thể đưa ra một trang web Tin Tức dựa trên mã nguồn mởthể giải quyết được yêu cầu của thực tế mang lại thông tin giải trí trong cộng đồng mạng. Được sự cho phép của nhà trường và bộ môn tôi đã đi thực hiện đề tài với nội dung :”Nghiên cứu hình thực thể Model – View – Controller ứng dụng trên nguồn mở Joomla”. CHƯƠNG 1 LỊCH SỬ PHÁT TRIỂN VÀ KIẾN TRÚC JOOMLA 1. Lịch sử phát triển và kiến trúc Joomla 1.1 Joomla là gì ? Hình 1. 1: Biểu tượng Joomla Đầu tiên dễ dàng tìm hiểu về Joomla đó là: - Joomla là một Open Source. - Là một hệ quản trị nội dung nguồn mở. - Joomla được viết bằng ngôn ngữ PHP và kết nối tới cơ sở dữ liệu MySQL. - Joomla cho phép người dùng thêm, sửa , xóa đưa thông tin lên Internet một cách dễ dàng. SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 3 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla 1.2 Ứng dụng của Joomla Joomla có thể làm được rất nhiều công việc trên Internet. Sau đây là một số ứng dụng cơ bản Joomla ứng dụng vào mạnh nhất và người dùng chọn joomla để đáp ứng nhu cầu cần thiết : - Cổng thông tin điện tử truyền thông và doanh nghiệp. - Thương mại điện tử, báo điện tử trực tuyến. - Website cho các doanh nghiệp, cơ quan, chính phủ, trường học, 1.3 Lịch sử hình thành Cũng như các nguồn khác và các sản phẩm công nghệ khác như facebook, nukeviet, vbb, mybb và nhiều sản phẩm công nghệ trực tuyến khác thì Joomla cũng là một trong những sản phẩm công nghệ được nhiều người tín nhiệm và được nhiều chính phủ quốc gia khuyên dùng. Joomla là “ sản phẩm anh em” với Mambo giữa tập đoàn Miro của Úc ( hiện đang nắm giữ Mambo ) với phần đông những người phát triển nòng cốt. Nhờ sự giúp đỡ của trung tâm Luật sư tự do phần mềm 20 thành viên nòng cốt cũ của Mambo đã thành lập một tổ chức phi lợi nhuận lấy tên là Open Source Matter. Ngày 16 tháng 9 năm 2005 cho ra đời phiên bản Joomla 1.0. 1.4 Các phiên bản của Joomla Trải qua chặng đường về thời gian, từng ngày hoàn thiện mình. Joomla mỗi ngày một mới với từng phiên bản, sự bảo mật nâng cấp phiên bản đáp ứng đầy đủ mọi tính năng cần thiết cho một website. Joomla trải qua các phiên bản sau: - Dòng phiên bản 1.0.x : có một số lượng lớn các thành phần mở rộng, thành phần nhúng, giao diện. Phiên bản 1.0.0 được phát hành đầu tiên vào ngày 16 SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 4 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla tháng 9 năm 2005. Phiên bản phát hành mới nhất là Joomla 1.0.5 vào ngày 22 tháng 2 năm 2008. - Dòng phiên bản 1.5.x : Phần quản trị Website sử dụng công nghệ Web 2.0, một số tính năng được cải tiến so với phiên bản 1.0.x. Phiên bản mới nhất được phát hành vào ngày 03 tháng 06 năm 2009. - Dòng phiên bản 1.6.x : được phát hành vào ngày 10 tháng 01 năm 2011. Kết thúc vào ngày 26 tháng 07 năm 2011. - Dòng phiên bản 1.7.x : được phát hành vào ngày 19 tháng 07 năm 2011. Kết thúc vào ngày 24 tháng 02 năm 2012 nhường chổ cho phiên bản 2.5. - Dòng phiên bản 2.5.x : được phát hành vào ngày 24 tháng 01 năm 2012. Kết thúc vào ngày 19 tháng 06 năm 2012. Điểm mạnh của phiên bản này là: Tự động cập nhật qua nút bấm trong phần quản trị, hỗ trợ SEO mạnh hơn, phân quyên sâu hơn với từng thành viên. - Dòng phiên bản 3.0.x : đang ở giai đoạn Joomla 3.0 Alpha được phát hành vào ngày 12 tháng 7 năm 2012. 2. Joomla Content Management System 2.1 Content Management System là gì? Content Management System ( gọi tắt là CMS) dịch sang tiếng việt là hệ quản trị nội dung. 2.2 Joomla sử dụng Content Management System Khi bạn biết về HTML và Content Management System, nội dung trang của bạn sẽ được bạn trang trí đẹp hơn, bố cục gọn gàng hơn chuyên nghiệp cộng với một số hiệu ứng bắt mắt hơn. Một trang web được gọi là động khi nội dung, hình ảnh hiển thị trên trang web đều có thể thay đổi tùy chọn, cập nhật được không cần đến kỹ thuật viên. Do vậy cần phải có môt hệ thống đảm trách công việc này, hệ thống đó được gọi là hệ quản trị nội dung, chính là Content Management System gọi tắt là CMS. SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 5 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Với sự phát triển mạnh mẽ và không ngừng của Internet. Joomla ra đời cũng sử dụng CMS để đáp ứng được nhu cầu của cộng đồng mạng. CHƯƠNG 2 NGHIÊN CỨU HÌNH MODEL - VIEW - CONTROLLER 1. Lịch sử hình thành hình Model – View - Controller 1.1 Lịch sử hình thành hình Model – View - Controller Mô hình Model – View - Controller đã trở nên thông dụng trong các nền tưởng tảng công nghệ khác nhau từ LAMP ( PHP, MySQL ) tới ASP.NET (asp.net, mysql) Thông tin bài viết này sẽ giúp bạn rõ hơn về hình lập trình mới và ngày càng được ưa chuộng này. Bắt đầu vào những năm 70 của thế kỷ 20 tại phòng thí nghiệm Xerox PARC ở Palo Alto. Sự ra đời của giao diện đồ họa và lập trình hướng đối tượng cho phép lập trình viên làm việc với những thành phần đồ họa như những đối tượng đồ họa có thuộc tính và phương thức riêng của nó. Không dừng lại ở đó, những nhà nghiên cứu ở Xerox PARC còn đi xa hơn khi cho ra đời cái gọi là kiến trúc Model – View – Controller ( viết tắt là MVC). Trong kiến trúc Model – View – Controller một đối tượng đồ họa (GUI Compent) bao gồm 3 thành phần cơ bản: Model, View và Controller. Model có trách nhiệm đối với toàn bộ dữ liệu cũng như trạng thái của đối tượng đồ họa. View chính là thể hiện trực quan của Model, hay nói cách khác chính là giao diện của đối tượng đồ họa. Và Controller điều khiển việc tương tác giữa đối tượng đồ họa với người sử dụng cũng như những đối tượng khác. SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 6 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla 1.2 Kiến trúc Model - View - Controller Kiến trúc Model – View – Controller đã tách biệt sự phụ thuộc giữa các thành phần trong một đối tượng đồ họa, làm tăng tính linh động và tính tái sử dụng của đối tượng đồ họa đó. Một đối tượng đồ họa bấy giờ có thể dễ dàng thay đổi giao diện bằng cách thay đổi thành phần View của nó trong khi cách thức lưu trữ (Model) cũng như xử lý (Controller) không hề thay đổi. Tương tự, ta có thể thay đổi cách thức lưu trữ (Model) hoặc xử lý (Controller) của đối tượng đồ họa mà những thành phần còn lại vẫn giữ nguyên. Kiến trúc Model – View - Controller đã được ứng dụng để xây dựng rất nhiều framework và thư viện đồ họa khác nhau. 1.3 Lưu ý khi cài đặt kiến trúc Model – View - Controller - Thành phần Model không cần thiết phải biết đến các View và Controller cụ thể gắn kết với nó. Khi có thay đổi, Model chỉ việc phát thông điệp cho những ai đăng ký với nó. Điều này có thể được thực hiện thông qua Observer Pattern. - Nên áp dụng Facade Pattern để kết hợp Model, View, và Controller lại với nhau thành “3 trong 1” cho dễ quản lý và thao tác đối với người sử dụng. - Kiến trúc Model - View - Controller không phải là kiến trúc 3 tầng (3-Tiers Architecture). Mặc dù giữa 2 kiến trúc này có nhiều điểm tương đồng nhưng chúng nói về 2 khía cạnh khác nhau. SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 7 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla 2. hình Model - View - Controller đơn giản Hình 1. 2: hình Model - View - Controller đơn giản - File model.php dùng để xử lý thông tin trong database <?php function dbconnect() { static $connect = null; if ($connect === null) { $connect = mysql_connect('myserver', 'mylogin', 'mypassword'); mysql_select_db('myDB'); } return $connect; } function get_news($id) { $news_req = mysql_query("SELECT * FROM news WHERE id='$news_id' ",dbconnect()); SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 8 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla return mysql_fetch_array($news_req); } function get_comment($news_id) { $comment_req = mysql_query("SELECT * FROM commentaires WHERE n ews_id='$news_id'",dbconnect()); $result = array(); while ($comment = mysql_fetch_array($comment_req)) { $result[] = $comment; } return $result; } function insert_comment($comment) { mysql_query("INSERT INTO commentaires SET news_id='{$comment['ne ws_id']}', auteur='".mysql_real_escape_string($comment['auteur'])."', texte='".mysql_real_escape_string($comment['texte'])."', date=NOW()" ,dbconnect() ); } - File controller.php để xử lý vấn đề <?php require ('mymodel.php'); if ($_SERVER['REQUEST_METHOD'] == 'POST') { insert_comment($_P OST); header("HTTP/1.1 301 Moved Permanently"); SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 9 Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla header("location: {$_SERVER['PHP_SELF']}? news_id={$_POST['news_id']}"); exit; } else { $news = get_news($_GET['news_id']); $comments = get_comments($_GET['news_id']); require ('myview.php'); } ?> CHƯƠNG 3 NGHIÊN CỨU HÌNH MODEL – VIEW – CONTROLLER TRONG NGUỒN MỞ JOOMLA 1. Nghiên cứu hình Model - View - Controller trong nguồn mở Joomla Bắt đầu từ phiên bản Joomla 1.5.x hoặc các phiên bản sau này, Joomla đã đưa vào một framework mới, mang lại những thuận tiên rất lớn cho những người phát triển. Các đoạn code giờ đây rất dễ dàng để kiểm tra và khá rõ ràng. Framework này đưa ra một mẫu thiết kế mới, thiết kế Model - View - Controller trong Joomla. Model – View - Controller (gọi tắt là MVC) là một mẫu thiết kế phần mềm được dùng để tổ chức các đoạn theo cách việc xử lý dữ liệu và biểu diễn dữ liệu tách rời nhau. Điều này tạo ra tiền đề cho hướng tiếp cận sau này khi việc xử lý dữ liệu được nhóm vào trong một section, khi đó giao diện hay quá trình tương tác với người dùng bao quanh dữ liệu có thể được định dạng và tùy biến lại mà không phả định dạng và tùy biến lại việc lập trình xử lý đó nữa. 1.1 Hiểu sâu về Joomla - Thành phần cơ bản : Font – end (hiển thị nội dung trang web). Back – end (là phần quản lý website dành cho người quản trị, chủ nhân của website). SVTH: Trần Văn Lực – Nilavon Phonmanchac Lớp: K2-CNTT 10 [...]... K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Hình 1 31: Hiển thị nội dung trang website Hình 1 32: Hiển thi thông tin chân trang SVTH: Trần Văn Lực – Nilavon Phonmanchac 28 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla CHƯƠNG 4 THẢO LUẬN KẾT QUẢ THỰC TẬP 1 Thảo luận của kết quả quá trình nghiên. .. ……………………………………………………………………………………… SVTH: Trần Văn Lực – Nilavon Phonmanchac 29 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla 2 Ưu điểm hệ thống Trong quá trình nghiên cứu hình Model - View - Controller cùng thực thi hình Model - View - Controller trên nguồn mở Joomla, xây dựng trang tin tức chia sẽ trực tuyến Được sự giúp đỡ của Trung Tâm CNTT & TT... Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Hình 1 20: Cài đặt một Module Joomla! từ trang quản trị 3.3 Cách tạo một số module a Menu - Từ Module manager chọn new -> Menu Hình 1 21: Tạo mới menu SVTH: Trần Văn Lực – Nilavon Phonmanchac 22 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla - Chi tiết các thông tin menu Hình 1 22: Giao... 24 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Hình 1 25: Menu quản lý Joomla Plugin từ trang quản trị 4.2 Cài đặt Joomla Plugin Hình 1 26: Cài đặt một Joomla Plugin từ trang quản trị 5 Joomla Template 5.1 Giới thiệu về Joomla Template Joomla Template là một gói bao gồm các file PHP, HTLM, CSS, JS (Javascript) … và các tấm hình ảnh, biểu tượng,... hình ảnh được hiển thị trên trang web) 2 Phân tích lớp Joomla trong hình Model - View - Controller 2.1 Giới thiệu về Component Hình 1 3: Hình ảnh về Component SVTH: Trần Văn Lực – Nilavon Phonmanchac 11 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Component chịu trách nhiệm phản hồi các hành động của người dùng Đây là phần cốt lõi của Joomla. .. theo tạo nên giao diện, bố cục của website Joomla SVTH: Trần Văn Lực – Nilavon Phonmanchac 25 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Hình 1 27: Quản lý Template Joomla từ trang quản trị 5.2 Cài đặt Template Joomla Hình 1 28: Cài đặt Template Joomla từ trang quản trị Chúng ta mở trang quản trị và sử dụng menu Extensions >> Install / Unistall... Upload từ máy tính của bạn - Cài đặt từ 1 thư mục trên hosting - Cài đặt từ một liên kết bên ngoài Webssite của bạn SVTH: Trần Văn Lực – Nilavon Phonmanchac 26 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla 6 Một số hình ảnh về trang tin tức theo Joomla Hình 1 29: Hiển thị menu của trang thông tin Hình 1 30: Hiện thị phần nội dung của trang website... 2.2 Cài đặt Joomla Component Hình 1 4: Cài đặt Component 2.3 Các component tích hợp trong Joomla a Contact SVTH: Trần Văn Lực – Nilavon Phonmanchac 12 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Contact Manager cho phép bạn quản lý một danh sách các contact (liên hệ) trong site Khi bạn thiết lập các contact, các visitor sẽ có thể tìm các... component -> chọn contacts -> contacts Hình 1 8: Tạo contact con mới - Điền các thông tin về contact SVTH: Trần Văn Lực – Nilavon Phonmanchac 14 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Hình 1 9: Giao diện thông tin contact - Các tham số cho biết các chi tiết thông tin nào được thể hiện cho người dùng xem Hình 1 10: Chi tiêt các tham số thông... Phonmanchac 18 Lớp: K2-CNTT Nghiên cứu hình thực thể Model-View-Controller ứng dụng xây dựng trên nguồn mở Joomla Hình 1 17: Giao diện web link - Name :Nhập tên web link là tên sẽ xuất hiện trên site Category : Chọn category mong mốn URL: Nhập địa chỉ web link Description: Thêm đoạn nhỏ tả Order: Sắp xếp thứ tự các web links Target : Điều hướng trình duyệt khi mở liên kết Sau khi tạo các web . Phonmanchac Lớp: K2-CNTT 7 Nghiên cứu mô hình thực thể Model-View-Controller ứng dụng xây dựng trên mã nguồn mở Joomla 2. Mô hình Model - View - Controller đơn giản Hình 1. 2: Mô hình Model - View -. Model-View-Controller ứng dụng xây dựng trên mã nguồn mở Joomla 1.2 Ứng dụng của Joomla Joomla có thể làm được rất nhiều công việc trên Internet. Sau đây là một số ứng dụng cơ bản mà Joomla ứng dụng vào mạnh. K2-CNTT 5 Nghiên cứu mô hình thực thể Model-View-Controller ứng dụng xây dựng trên mã nguồn mở Joomla Với sự phát triển mạnh mẽ và không ngừng của Internet. Joomla ra đời cũng sử dụng CMS để đáp ứng

Ngày đăng: 02/04/2014, 07:20

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1

  • LỊCH SỬ PHÁT TRIỂN VÀ KIẾN TRÚC JOOMLA

    • 1. Lịch sử phát triển và kiến trúc Joomla

      • 1.1 Joomla là gì ?

      • 1.2 Ứng dụng của Joomla

      • 1.3 Lịch sử hình thành

      • 1.4 Các phiên bản của Joomla

      • 2. Joomla Content Management System

        • 2.1 Content Management System là gì?

        • 2.2 Joomla sử dụng Content Management System

        • CHƯƠNG 2

        • NGHIÊN CỨU MÔ HÌNH MODEL - VIEW - CONTROLLER

          • 1. Lịch sử hình thành mô hình Model – View - Controller

            • 1.1 Lịch sử hình thành mô hình Model – View - Controller

            • 1.2 Kiến trúc Model - View - Controller

            • 1.3 Lưu ý khi cài đặt kiến trúc Model – View - Controller

            • 2. Mô hình Model - View - Controller đơn giản

            • CHƯƠNG 3

            • NGHIÊN CỨU MÔ HÌNH MODEL – VIEW – CONTROLLER TRONG

            • MÃ NGUỒN MỞ JOOMLA

              • 1. Nghiên cứu mô hình Model - View - Controller trong mã nguồn mở Joomla

                • 1.1 Hiểu sâu về Joomla

                • 2. Phân tích lớp Joomla trong mô hình Model - View - Controller

                  • 2.1 Giới thiệu về Component

                  • 2.2 Cài đặt Joomla Component

                  • 2.3 Các component tích hợp trong Joomla

                  • 3. Module Joomla

                    • 3.1 Giới thiệu các module

                    • 3.2 Joomla Module

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

Tài liệu liên quan