Thứ Ba, 7 tháng 6, 2011

Khái niệm về Flex

Thế nào là Flex? 

Cũng như Flash, Flex tạo ra file SWF và được trình bày bởi Flash Player. Tuy nhiên, Flex chỉ là một công cụ chủ yếu của người lập trình và cách thức bạn phát triển ứng dụng Flex hoàn toàn khác biệt với cách thức bạn phát triển Flash RIAs (Rich Internet applications). Tất cả các sự phát triển của flex phụ thuộc vào framework mà nó hỗ trợ cho bạn sử dụng lại hoặc phát triển thêm các thành phần giao diện người dùng, những tương tác dữ liệu, các hàm về sự kiện v.v...Bạn có thể tạo RIAs mã quen thuộc trong một môi trường-trung tâm, nhưng bạn vẫn còn gặt hái những lợi ích của việc ứng dụng Flash, trong đó bao gồm:

* Khả năng design và kế thừa giao diện mà không phải sợ giới hạn của trình duyệt
* Một môi trường runtime với việc triển khai gần như 100% cho tất cả mọi người sử dụng Internet.
* Khả năng mạnh mẽ của ngôn ngữ actionscript
* Khả năng tích hợp các phương tiện thông tin phong phú như streaming video và âm thanh.

Người nào sẽ sử dụng Flex ?

Flex được tạo ra dành cho các lập trình viên , chứ không phải cho các nhà thiết kế. Ngôn ngữ lập trình chính Flex( ActionScript 3) là hướng đối tượng vì thế thật dễ dàng nếu bạn đã có một số kinh nghiệm với các khái niệm OOP.

Những gì bạn sẽ cần mua ? 

Xây dựng các ứng dụng Flex có thể được miễn phí. Tất cả những gì bạn cần là miễn phí, mã nguồn mở Flex SDK, trong đó bao gồm:

* The Flex Framework - Nhưng thư viên class được định nghĩa trước
* The standalone compiler 

Những công nghệ phần mềm Adobe Flex có chi phí là:

* Flex Builder - The Eclipse-IDE dùng cho việc xây dựng giao diện nhanh chóng.
* Flex Charting - Thư viện giao diện dành cho việc vẽ các hình ảnh biểu đồ.
* LiveCycle Data Services (previously Flex Data Services) - The enterprise technology with built-in data management services, Flex-Ajax bridge, Java Message Service (JMS) adapter, and real-time collaboration tools.


Bạn xây dựng ứng dụng Flex như thế nào? 


Một khi bạn đã quyết định xem bạn sẽ sử dụng miễn phí Flex SDK hay Flex Builder IDE, bạn có thể bắt đầu phát triển RIA của bạn.
Bạn cần biết các ngôn ngữ sau:

* MXML là XML-based markup language dùng cho việc xây dựng các đối tượng hình ảnh
* Actionscript


Nếu bạn đang sử dụng miễn phí SDK, bạn sẽ sử dụng standalone compiler để biên dịch mã của bạn vào một swf file. Flex Builder có thể được đặt để biên dịch mã của bạn sẽ tự động tạo ra những mã code liên quan đến với trình duyệt.

Trong quá trình biên soạn, mã MXML của bạn được dịch sang mã ActionScript và sau đó tất cả các mã ActionScript được biên soạn vào tập tin nhị phân swf. Các tập tin swf có thể được tải lên máy chủ trang web, nơi mà sau đó nó được phục vụ lập dựa trên yêu cầu người sử dụng.


Thành phần của Flex? 

Flex 2.0 là sự kết hợp 2 công nghệ chính Multimedia eXtensible Markup Language (MXML) và Action Script dựa trên nền tảng phát triển Eclipse. Ngoài ra, còn một thành phần rất quan trọng khác của nền tảng Flex 2.0 là Dịch vụ dữ liệu Flex (Flex Data Services – FDS), được đưa ra để thay thế máy chủ trình diễn Flex (Flex Presentation Server) ở các phiên bản Flex trước đây


MXML 

Là ngôn ngữ dựa trên XML giúp tạo ra các ứng dụng Flex. Cấu trúc của MXML khá giống với HTML, ta có thể xem qua ví dụ nhỏ sau:

<mx:Button x="100" y="100" label="Submit Now" id="btn_submit" click="CheckForm()"/>

Nhìn vào đoạn mã trên, đối với những người có chút kiến thức về IT có thể hiểu ngay nó dùng làm gì. Tương tự với HTML, các file MXML cũng cho phép nhúng các đoạn script vào trong và gọi ở nơi thích hợp. Chỉ khác ở chỗ là HTML sử dụng Java còn MXML thì sử dụng Action Script. MXML mạnh hơn rất nhiều so với HTML bởi ngoài khả năng sử dụng các thành phần (component) phong phú được tạo sẵn, ta còn có thể tạo ra các component cũng như event . Có thể nói MXML mạnh mẽ không kém gì các ngôn ngữ lập trình thông thường hiện nay. Việc kết hợp các file MXML với nhau là việc rất dễ dàng, chính vì thế việc tái sử dụng hay xây dựng template cho 1 website trở nên nhẹ nhàng hơn.

Action Script 3.0

Action script 3.0 hỗ trợ mô hình lập trình hướng đối tượng (OOP) hoàn chỉnh, giới thiệu các kiểu dữ liệu cơ bản và đặc biệt là từ khóa sealed class giúp tăng hiệu năng của ứng dụng. Hơn hẳn các ngôn ngữ script khác, action script có hẳn một thư viện đồ họa giúp vẽ các ảnh vector và tạo effect lúc runtime. Action script + MXMLl kết hợp với thư viện component đồ sộ của flex giúp tạo ra các ứng dụng web cực kì mạnh mẽ về tính năng và mỹ thuật.

FDS

FDS có thể chạy tốt trên nhiều nền tảng khác nhau như Windows, Linux, Unix và làm việc tốt với hầu hết các máy chủ ứng dụng Java. FDS cung cấp một số công cụ quản trị và giám sát cơ bản có thể truy nhập thông qua trình duyệt. Tuy nhiên, FDS được đưa ra chủ yếu để triển khai và chạy các ứng dụng Flex, tăng khả năng tích hợp và liên kết dữ liệu cấp doanh nghiệp.

Sức mạnh của Flex

Các công cụ trong Flex Builder và Flex Data Services đã đơn giản hoá việc phát triển ứng dụng và làm cho bản thân các ứng dụng này hoạt động tốt hơn. Các nhà phát triển cũng không phải bỏ tiền ra để sử dụng thành phần phát triển ứng dụng này. Flex SDK miễn phí bao gồm tất cả công cụ chương trình biên dịch, chương trình gỡ rối, và các mã cần thiết để tạo các ứng dụng Flex. Hơn nữa, giờ đây Flex SDK cũng có thể dùng để tạo các ứng dụng hoạt động độc lập mà không cần có sự hỗ trợ của máy chủ.

Điểm mạnh

Khác với các phiên bản Flex trước đây, Flex 2.0 đã được cải tiến rất nhiều cả về tính năng và giao diện làm việc. Với Flex 2.0, người dùng khả năng chuyển đổi giữa thiết kế theo phương pháp kéo-thả và môi trường viết mã lệnh cho phép xây dựng từng phần của ứng dụng trong môi trường thích hợp nhất. Chẳng hạn, với khung nhìn thiết kế, người ta có thể kéo và thả các thành phần để bố cục ứng dụng rồi nhanh chóng xây dựng các phần trình diễn cơ bản cho ứng dụng. Trong khung nhìn mã lệnh, tất cả các trợ giúp viết mã cần thiết đều có sẵn để giúp hiệu chỉnh trực tiếp mã ứng dụng, thông tin định dạng (stylesheet) và các mã định nghĩa riêng của Flex như ActionScripts hay MXML.

Điểm yếu

Điểm yếu Flex Builder lại chỉ tương thích duy nhất với môi trường Windows, điều mà người ta ít thấy ở các sản phẩm của hãng Adobe .Mặc dù Flex builder được phát triển trên nền tảng Eclipse – nền tảng được thiết kế để thực thi trên nhiều môi trường khác nhau và có FDS rất mạnh mẽ.
Mặc dù việc tạo ra các ứng dụng Flex là khá dễ dàng đối với các nhà phát triển đã quen với lập trình ứng dụng Web và dịch vụ Web, Flex vẫn có một số thành phần khá phức tạp đối với các lập trình viên chưa thành thạo. Tuy vậy, bộ công cụ hỗ trợ cho lập trình viên của Flex khá mạnh với các ví dụ mẫu, hướng dẫn giải quyết tình huống trong từng hoàn cảnh cùng các trợ giúp khác giúp người dùng dễ dàng vượt qua các khó khăn trong quá trình phát triển ứng dụng Flex.
Với những gì hiện có, Flex xứng đáng được vinh danh tại 2007 Technology of the Year Awards . Tương lai của RIA cần những cú huých như thế này để ngày càng phát triển lên những tầng cao mới. Flex đã mang lại bước tiến nhảy vọt cho RIA nói riêng và IT thế giới nói chung.

Không có nhận xét nào:

Đăng nhận xét