building joomla extensionswithflexintegration-101218211856-phpapp01

22
Xây dựng Joomla! Xây dựng Joomla! extensions tích hợp extensions tích hợp Adobe Flex Adobe Flex Created by: Bravebits Ltd Created by: Bravebits Ltd

Upload: hazzaz

Post on 07-Jul-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: building joomla extensionswithflexintegration-101218211856-phpapp01

Xây dựng Joomla! Xây dựng Joomla! extensions tích hợp extensions tích hợp

Adobe FlexAdobe FlexCreated by: Bravebits LtdCreated by: Bravebits Ltd

Page 2: building joomla extensionswithflexintegration-101218211856-phpapp01

GiớiGiới thiệuthiệu JoomlaJoomla CMS CMS vàvà hướnghướng dẫndẫn xâyxây dựngdựng JoomlaJoomla extensions extensions

NângNâng caocao tínhtính thânthân thiệnthiện bằngbằng cáchcách tíchtích hợphợp Adobe Flex Adobe Flex vàovào JoomlaJoomla Extension Extension

Source code Source code vàvà Demo Demo sửsử dụngdụng JSN JSN ImageShowImageShow extension extension

HỏiHỏi & & đápđáp

Khái quátKhái quát

Page 3: building joomla extensionswithflexintegration-101218211856-phpapp01

Giới thiệu Joomla CMS và Giới thiệu Joomla CMS và hướng dẫn xây dựng Joomla hướng dẫn xây dựng Joomla

extensionsextensions

Page 4: building joomla extensionswithflexintegration-101218211856-phpapp01

Joomla CMSJoomla CMS Joomla là một Open Source CMS Joomla là một Open Source CMS Viết bằng ngôn ngữ PHP và kết nối tới Viết bằng ngôn ngữ PHP và kết nối tới

database MySQL database MySQL Một trong 3 open source CMS phổ biến Một trong 3 open source CMS phổ biến

nhất: Wordpress, Joomla, Drupalnhất: Wordpress, Joomla, Drupal Đã có 22 triệu lượt download (Số liệu Đã có 22 triệu lượt download (Số liệu

12/2010).12/2010). Hơn 6000 extension trên JED (Joomla Hơn 6000 extension trên JED (Joomla

Extension Directory).Extension Directory).

Page 5: building joomla extensionswithflexintegration-101218211856-phpapp01

Requirements for Joomla Requirements for Joomla 1.5.x1.5.x

Page 6: building joomla extensionswithflexintegration-101218211856-phpapp01

Joomla ExtensionJoomla Extension Để tùy biến hoặc bổ sung tính năng cho Để tùy biến hoặc bổ sung tính năng cho

Joomla, cần cài đặt thêm các ExtensionJoomla, cần cài đặt thêm các Extension Các loại extension của JoomlaCác loại extension của Joomla

ComponentsComponents ModulesModules PluginsPlugins TemplatesTemplates Language packLanguage pack

Page 7: building joomla extensionswithflexintegration-101218211856-phpapp01

MVC trên Joomla MVC trên Joomla componentcomponent

Trong Joomla, Trong Joomla, mô hình MVC mô hình MVC được hỗ trợ được hỗ trợ thông qua 3 lớp thông qua 3 lớp JModel, JView JModel, JView và Jcontroller. và Jcontroller.

Page 8: building joomla extensionswithflexintegration-101218211856-phpapp01

MVC folder structure in MVC folder structure in ComponentComponent

Simple Component Simple Component Complex Component Complex Component

Page 9: building joomla extensionswithflexintegration-101218211856-phpapp01

Nâng cao tính thân thiện bằng Nâng cao tính thân thiện bằng cách tích hợp Adobe Flex vào cách tích hợp Adobe Flex vào

Joomla ExtensionJoomla Extension

Page 10: building joomla extensionswithflexintegration-101218211856-phpapp01

Giới thiệu về RIA và Flex Giới thiệu về RIA và Flex Rich Internet applications (RIA) là các ứng dụng trên Rich Internet applications (RIA) là các ứng dụng trên

web có đầy đủ các tính năng đặc trưng của các ứng web có đầy đủ các tính năng đặc trưng của các ứng dụng desktop truyền thống. Các RIA sẽ chuyển các quá dụng desktop truyền thống. Các RIA sẽ chuyển các quá trình xử lý dữ liệu từ giao diện người dùng tới các Web trình xử lý dữ liệu từ giao diện người dùng tới các Web client nhưng chúng sẽ giữ lại các dữ liệu trên máy chủ client nhưng chúng sẽ giữ lại các dữ liệu trên máy chủ ứng dụng (application server)ứng dụng (application server)

Flex (Adobe Flex) là công nghệ mới của hãng Adobe Flex (Adobe Flex) là công nghệ mới của hãng Adobe cung cấp công nghệ phát triển RIA chuyên nghiệp.  Flex cung cấp công nghệ phát triển RIA chuyên nghiệp.  Flex dựa trên Flash, dùng ngôn ngữ khai báo MXML dựa trên dựa trên Flash, dùng ngôn ngữ khai báo MXML dựa trên XML kết hợp với ActionScript, cung cấp sự tách biệt giữa XML kết hợp với ActionScript, cung cấp sự tách biệt giữa phần giao diện người dùng và phần luận lý ứng dụng rõ phần giao diện người dùng và phần luận lý ứng dụng rõ ràng hơn so Flash. ràng hơn so Flash.

Page 11: building joomla extensionswithflexintegration-101218211856-phpapp01

Nâng cao tính thân thiện qua Nâng cao tính thân thiện qua FlexFlex

Usability: Tính thân thiện người dùngUsability: Tính thân thiện người dùng Ưu điểm của Flex:Ưu điểm của Flex:

Hỗ trợ trên các browser và platformHỗ trợ trên các browser và platform   Tương tác với thông tin động không cần load Tương tác với thông tin động không cần load

lại tranglại trang Hỗ trợ thiết kế giao diện người dùng với tính Hỗ trợ thiết kế giao diện người dùng với tính

tương tác caotương tác cao Thời gian phát triển nhanhThời gian phát triển nhanh

Page 12: building joomla extensionswithflexintegration-101218211856-phpapp01

Các phương thức tích hợp PHP và Các phương thức tích hợp PHP và FlexFlex

Flex client có thể kết nối với Server side bằng 2 phương thức: HTTP Flex client có thể kết nối với Server side bằng 2 phương thức: HTTP và Sockets và Sockets

Kết nối thông qua Sockets không phù hợp với JoomlaKết nối thông qua Sockets không phù hợp với Joomla Kết nối HTTP:Kết nối HTTP:

Sử dụng HTTPService component để send request ( POST hoặc GET) Sử dụng HTTPService component để send request ( POST hoặc GET) đến server. Dữ liệu trả về có định dạng là XML hoặc JSON.đến server. Dữ liệu trả về có định dạng là XML hoặc JSON.

FF lex sử dụng WebService components để kết nối với server thông qua lex sử dụng WebService components để kết nối với server thông qua webservice của server. Flex web service API hỗ trợ format: SOAP 1.1, webservice của server. Flex web service API hỗ trợ format: SOAP 1.1, XML Schema 1.0, WSDL 1.1 document-literal. XML Schema 1.0, WSDL 1.1 document-literal.

Remoting( or RPC)Remoting( or RPC) :Flex client sẽ gửi một request message tới :Flex client sẽ gửi một request message tới server để thực thi một function trên server. Sau khi thực thi xong thì server để thực thi một function trên server. Sau khi thực thi xong thì server sẽ trả kết quả về để Flex client tiếp tục xử lý.Flex sử dụng server sẽ trả kết quả về để Flex client tiếp tục xử lý.Flex sử dụng RemoteObject component kết hợp với third-party software(AmfPhp, RemoteObject component kết hợp với third-party software(AmfPhp, WebOrb, Zenamf, BlazeDS ) để community với PHP WebOrb, Zenamf, BlazeDS ) để community với PHP

Page 13: building joomla extensionswithflexintegration-101218211856-phpapp01

Giới thiệu về JSONGiới thiệu về JSON Viết tắt của JavaScript Object Notation. Là một Viết tắt của JavaScript Object Notation. Là một

chuẩn để định dạng dữ liệu, tương tự XML chuẩn để định dạng dữ liệu, tương tự XML YAML…. YAML….

JSON chính là cách biểu diễn một đối tượng của JSON chính là cách biểu diễn một đối tượng của JavaScript và ActionScript.JavaScript và ActionScript.

Khi sử dụng JSON với JavaScript hay Khi sử dụng JSON với JavaScript hay ActionScript, có thể truy vấn trực tiếp giá trị theo ActionScript, có thể truy vấn trực tiếp giá trị theo tên (khóa) được định nghĩa trong JSON.tên (khóa) được định nghĩa trong JSON.

Dữ liệu JSON gọn nhẹ hơn vì không yêu cầu Dữ liệu JSON gọn nhẹ hơn vì không yêu cầu nhiều thẻ như XML.nhiều thẻ như XML.

Page 14: building joomla extensionswithflexintegration-101218211856-phpapp01

Sử dụng JSON cho Joomla và Sử dụng JSON cho Joomla và FlexFlex

Flex trực tiếp call đến Joomla ComponentFlex trực tiếp call đến Joomla Component Joomla Component trả về dữ liệu dưới Joomla Component trả về dữ liệu dưới

dạng JSONdạng JSON Flex phân tích dữ liệu và hiển thị trên Flex phân tích dữ liệu và hiển thị trên

InterfaceInterface

Page 15: building joomla extensionswithflexintegration-101218211856-phpapp01

Joomla Extension tích hợp Joomla Extension tích hợp FlexFlex

Page 16: building joomla extensionswithflexintegration-101218211856-phpapp01

Source code và Demo sử Source code và Demo sử dụng JSN ImageShow dụng JSN ImageShow

extensionextension

Page 17: building joomla extensionswithflexintegration-101218211856-phpapp01

Giới thiệu JSN ImageShowGiới thiệu JSN ImageShow Là một JSN Extension có chức năng quản Là một JSN Extension có chức năng quản

lý và trình diễn ảnh lý và trình diễn ảnh Sử dụng Flash để slide ảnhSử dụng Flash để slide ảnh Kết nối được với nhiều image sourceKết nối được với nhiều image source Cung cấp nhiều hiệu ứng hình ảnh đẹp Cung cấp nhiều hiệu ứng hình ảnh đẹp

mắtmắt Dễ sử dụng, cho phép back up và restore Dễ sử dụng, cho phép back up và restore

dữ liệu.dữ liệu.

Page 18: building joomla extensionswithflexintegration-101218211856-phpapp01

PHP function giao t iếp với PHP function giao t iếp với FlexFlex

PHP function:PHP function:(load hình ảnh từ một showlist)(load hình ảnh từ một showlist)

Page 19: building joomla extensionswithflexintegration-101218211856-phpapp01

JSON kết quả từ PHPJSON kết quả từ PHP

Page 20: building joomla extensionswithflexintegration-101218211856-phpapp01

Flex sử dụng chuỗi JSONFlex sử dụng chuỗi JSON

Page 21: building joomla extensionswithflexintegration-101218211856-phpapp01

Hỏi & ĐápHỏi & Đáp

Page 22: building joomla extensionswithflexintegration-101218211856-phpapp01

THANK YOU!THANK YOU!