輔助功能*
Ben Forta

Ben Forta

www.forta.com*

出版日期:
17 October 2005
用户级别:
全部
產品:
Coldfusion

Flex 2: 這對 ColdFusion 開發人員有何意義?

甫推出的 Flex 2 產品系列針對建立和部署 Rich Internet Applications, 提供下一代的工具和服務。正如 David Wadhwani 在 Flex 2 產品系列簡介中所說明的, 它包含下列技術:

  • Macromedia Flex Framework 2
  • Macromedia Flex Builder 2
  • Macromedia Flex Charting Components 2
  • Macromedia Flex Enterprise Services 2

這對我們 ColdFusion 開發人員有何實質意義?

ColdFusion 與 RIA 體驗

首先, 毋需做太多說明, 因為 ColdFusion 開發人員對 Rich Internet Applications 並不陌生。我們接觸 RIA 功能已有一段時間, 而且也成功將它們運用在多種不同複雜程度的工作中。

  • ColdFusion 5 包括一個工作套件, 可讓您輕鬆將 Flash 程式 (widget) 內嵌在 ColdFusion 產生的輸出作品中。
  • 自從 ColdFusion MX 版本以來, ColdFusion 就已包括了 Flash Remoting 功能, 可讓開發人員在後端使用 ColdFusion(其中包括 ColdFusion 元件 (CFC)), 在 Flash 中建立 rich client。
  • 自從 Flex 推出以來, 就可產生複雜的 Flash 使用者介面, 將它連接至 ColdFusion 後端。
  • 目前推出的產品版本 ColdFusion MX 7 中包括了 Flex 技術子集, 可建立以 Flash 為基礎的多樣化表格(相較於多樣化應用程式)。

過去數年以來, 許多 ColdFusion 開發人員都運用了這項功能, 將 ColdFusion 的伺服器端生產力與用戶端 Flash 的多樣化互動功能結合, 提供真正適合這兩個世界的作品。

但是, 平心而論, 這項程序十分重要。我們 ColdFusion 開發人員長久以來受制於設計人員導向的 Flash 製作環境, 有時會發現, 針對某些我們建立的應用程式類型, Flex 並非最佳的選擇。

但這一切即將改變。

這是全新的 Flex

Flex 開發典範是 ColdFusion 開發人員的最佳選擇。以標籤為基礎的抽象化物件, 加上支援描述語言功能, 正是我們要做的 - 符合我們的工作需求。而 N 層開發模式以及將後端處理程序與用戶端互動分隔, 也是我們要做(或該做)的, 所以也符合我們的工作需求。運用 XML、web services 和所有後端技術, 正是我們建立的應用程式之重要一環 - 所以這點也符合我們的需求。

但是 Flex 1.x 的其他部份, 則未達到我們的理想要求。建立在 Dreamweaver 之上的 Flex Builder 1.5 吸引了部份的 ColdFusion 開發人員, 但並不是所有人都喜歡它。控制項功能還有待改進, 因為 Flex 1.5 控制項通常缺乏資料導向應用程式所需的某些更複雜功能, 而我們建立的大部份應用程式正是資料導向的應用程式。更重要的是, 授權和部署選項並非永遠符合我們的需求。的確, 某些應用程式需要伺服器端 Flex 服務, 但大部份則否。

好消息是, Flex 2 解決了這些目前面臨的問題:

  • Flex Builder 2 是全新的 IDE, 建立在 Eclipse 工具平台之上。 這個高度程式碼導向環境包括掌握語言(包括色彩編碼和內嵌說明)、拖放式控制項放置位置、簡化的編碼 - 除錯 - 執行的執行檔、整合的除錯功能等等。Flex Builder 2 以獨立的 IDE 或 Eclipse 外掛程式的形式提供, 吸引了所有的編碼人員。
  • Flex Framework 2 大幅增強了控制項以及其功能。 從大幅增強的資料網格到改善的行事曆功能, 乃至於全新的多樣化文字編輯器(沒錯, 使用它而非大家討厭的 HTML <textarea> 標籤), 以及色彩選擇器等等。大部份的 ColdFusion 應用程式都具有高度資料導向的特性, 而這些全新的改善控制項最適合用於這些應用程式。值得注意的是, 這項全新的資料服務讓在這些控制項與伺服它們的 CFC 之間傳送資料, 變得易如反掌。
  • Flex 2 讓您將 Flex 架構授權為 Flex Builder IDE 的一部份, 針對每位開發人員收費。這項模型與 Flex 1.5 不同, 後者以伺服器形式出售和授權 - 客戶必須購買 Flex 架構和執行時期服務, 才能使用伺服器 - 並在執行時期中將它部署在伺服器上。顯然, 沒有伺服器端執行時期服務, 您就無法使用重要功能(包括傳送訊息和前述的資料服務)。但是之前已提到, 我認為許多開發人員將可透過 SOAP 和 Flash Remoting, 來建立和部署可和 ColdFusion 通訊的多樣化應用程式, 而且只需購買一個 IDE 即可。

除了這些改善功能之外, 我們建立了全新的 ColdFusion 介面卡, 讓 ColdFusion 在執行時期推播至 Flash 用戶端。此介面卡可對應在 ColdFusion 和 Flash ActionScript 之間往返傳送的資料類型, 甚至提供對 ColdFusion 安全性角色的存取權限。

我要說的是, Flex 2 是 ColdFusion 的最佳輔助工具。開發人員將會發現, 結合這兩項功能將可讓 Rich Internet Applications 的製作和部署, 變得比以前更加容易。

開始使用 Flex 2

那麼, 您的下一步該怎麼做?Macromedia Labs* 是您尋找技術和產品評論、發行前說明文件等等的全新所在。若要進一步了解, 請參閱什麼是 Macromedia Labs?* 一文。

在 Macromedia Labs 中, 您會找到 Flex 2 技術的發行前版本, 包括全新的 Flex Builder 2(以及 Flash Player 8.5 支援功能), 還有之前提到的 ColdFusion 介面卡。

所以, 不用多說。如果您已搭配使用 Flex 和 ColdFusion, 您應了解 Flex 2 可如何改善和簡化您的開發工作。如果您尚未體驗過 Flex, 現在正是開始行動的好時機。

關於作者

Ben Forta 是 Macromedia 的資深產品推廣人員, 撰寫過許多書籍, 包括 ColdFusion Web Application Construction Kit* 和其續集 Advanced ColdFusion Application Development*, 以及有關 SQL、JavaServer Pages、WAP、Windows 開發等等的書籍。Ben 也參與編寫正式的 Macromedia ColdFusion 培訓教材、認證測驗及 Macromedia Press* 針對這些測驗出版的學習指南, 而現在他則把大部份的時間投入有關全球應用程式開發的教學、演講和寫作。請造訪 Ben 的 blog:forta.com/blog*, 以閱讀他定期發佈有關 ColdFusion 等等的文章。