使用者介面更智慧有彈性,應用程式架構更易於管理
從進化論的角度檢視應用程式的演進,好似時尚流行趨勢,應用程式的重心,在伺服器與用戶端之間來回游走。每一次的遷移都有技術上的改進,新一代的應用程式架構,將再次回到以用戶端為主軸的架構,但不忘記取伺服器集中控管的優點,成為全新的Rich Client架構。
早期大型主機的時代,電腦是一個口令一個動作的生硬機器,通用普及的程度並不高。隨著Windows視窗作業系統的出現,1992年前後,主從架構的應用程式嶄露頭角,透過用戶端程式開發(Client-Side Programming)技術,呈現豐富親和且高互動性的使用者介面,大幅降低使用者接觸電腦的門檻,因此提升市場對電腦的接受度,對企業e化的貢獻很大。
然而,用戶端程式的部署及版本控管相當麻煩,系統維護頗為麻煩。1998年左右,隨著網際網路的普及,輕巧的網頁應用程式隨之盛行,採取伺服器端集中控管的架構,省去安裝應用程式及維護的麻煩,但是與介面的互動性卻大幅降低。
另一個疑慮是,雖然伺服器端應用程式管理成本低,然而,企業級應用程式龐大的架構及複雜的處理程序,在多人同時上線執行的情況下,系統反應時間未必理想,效能成為最大的瓶頸。
因此,市場上開始出現新的應用程式架構,結合網路部署及集中管理的便利性,及主從架構與使用者的高互動性,「Rich Client」的概念逐漸嶄露頭角。低互動性影響電子商務的發展
企業開發應用程式,勢必要在Java與.NET之間選邊站,以確保擴充性、彈性及穩定性。整合各式各樣的服務,組織入口網站也是未來的趨勢。然而許多企業重金投資電子商務,卻未必有明顯的成效,零壹科技技術顧問陳子龍分析原因:「因為企業沒有站在使用者的角度,思考操作的便利及舒適性。」
主從架構及網頁應用程式最大的差別何在?微軟開發工具暨平臺推廣處架構技術推廣經理麥超俊表示:「一般所指的主從架構是State-Full;而網頁應用程式則是State-Less。」也就是說,主從架構是緊密藕合的程式結構,用戶端包含使用者介面及商業邏輯程式,所以互動性較高;而網頁應用程式則是鬆散藕合的架構,用戶端僅具備使用者介面及基本的驗證邏輯程式。
網頁應用程式由伺服器端負責執行邏輯運算及儲存資料,再傳送靜態網頁結果至用戶端,因此,網頁的狀態無法保存(State-Less),必須重新整理或提交(Submit)網頁資訊,才能取得最新的結果。靜態網頁不但缺乏靈活的人機互動介面,如果資料輸入錯誤,瀏覽器也無法立即提示,在網頁提交之後,網頁才會顯示錯誤訊息,使用者必須返回上一頁修正,甚至所有的資料重新輸入,這樣的不方便性影響了使用者的感受。網頁驗證程式碼破解容易
除了使用者的體驗不夠好,系統的開發、維護及安全性也存在問題。透過ActiveX或Applet等,用戶端程式技術嵌入瀏覽器,也可提供高互動性的介面,但可能因為瀏覽器版本的不同,或作業系統的限制,導致相容性的問題。
目前HTML、DHTML摻雜JavaScript、VBScript、JSP或ASP程式,不僅維護不易,且JavaScript及VBScript等用戶端程式,利用瀏覽器的「檢視原始碼」功能,程式內容即一覽無遺。伺服器端的程式碼也未必安全,企業若未更新修補程式,駭客透過網頁顯示的錯誤訊息,也可破解ASP及JSP程式,衍生安全性的考量。Rich Client應用開始浮現
去年底微軟提倡Smart Client的概念;今年五月底IBM發表Workplace 2.0 Beta版;到了六月Macromedia的Flex展示伺服器上市。這三個看似八竿子打不著的產品,有一個相同的特值,即應用Rich Client的概念。
Workplace 2.0的用戶端技術,結合Tivoli軟體派送及安全控管的技術、Cloudscape資料庫儲存用戶端資料、並提供離線處理、全文檢索功能及OpenOffice提供文字編輯能力,讓企業可享有類似Lotus Notes的使用經驗。再利用開放原始碼的Java開發工具Eclipse,讓企業保有自己開發及整合其他應用程式的彈性。針對行動裝置推出的Micro版,則結合WebSphere Everyplace、DB2 Everyplace及Lotus Everyplace等技術,並利用SyncML標準達到資料同步化的目的。
Macromedia的Flex展示伺服器,是架構在應用伺服器之上的介面層,目前支援J2EE應用伺服器,預計年底將支援.NET平臺。Flex應用程式由呈現使用者介面的MXML,及撰寫商業邏輯的ActionScript程式組成。Flex伺服器會將Flex應用程式,編譯成SWF格式的Flash檔案,下載至用戶端執行。由於Flash Player在電腦的普及率高達98%,所以可減少用戶端額外安裝的負擔,以更生動直覺的Flash程式與使用者互動,強化電子商務的應用。
Smart Client則是.NET平臺的一種應用,隨著.NET Framework觸角的延伸,電腦、PDA、Smartphone甚至Office,都可作為Smart Client的平臺。.NET本身已提供自動更新、離線處理及網頁部署的技術,並解決過去「DLL Hell」的問題,結合Web Services更可跨平臺存取資料,並提供即時的資訊。Longhorn作業系統負責展現層的Avalon子系統中,將包含新的標記語言XAML,可分離使用者介面及商業邏輯程式,提供資訊人員更容易維護的程式架構。除了去蕪存菁,還有新的創意
綜觀Workplace 2.0、Flex展示伺服器及Smart Client,不約而同的應用了Rich Client的概念,不但結合用戶端應用程式高互動性的優點,及伺服器集中管理的長處,並改良用戶端應用程式部署及更新的問題,及網頁應用程式依賴網路的特性。
用戶端應用程式最麻煩的工作,就是必須逐臺安裝程式,未來的版本管理問題更是棘手。因此,Rich Client很重要的特色是自動更新的機制,伺服器在比對版本差異後自動下載更新的版本。
無論是主從架構或網頁應用程式,都很依賴網路及伺服器,一旦網路斷線或後端伺服器、資料庫當機,即癱瘓用戶端的作業。Rich Client提供了離線處理的能力,使用者可先行在本機處理或編輯資料,待與伺服器恢復連線,系統即自動同步兩邊的資料。
用戶端的HTML-MXML、XAML
目前用戶端應用程式的使用者互動介面,是透過開發工具所見即所得的介面設計,然後與程式一同編譯成執行檔或中介碼,再散布到用戶端電腦中。即使只是單純修改使用者介面的元件配置,仍必須藉助開發工具,然後連同程式編譯一次,再部署到用戶端。
Flex的MXML和Longhorn的XAML,兩者一致的概念,是希望用戶端應用程式使用者介面的設計與維護,能和網頁一樣,只需修改HTML檔並存回伺服器即可,不再與程式緊密綑綁,降低資訊人員維護的負擔。文⊙李延華
熱門新聞
2025-12-12
2025-12-16
2025-12-17
2025-12-15
2025-12-15
2025-12-15