<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架

    在現(xiàn)在的軟件業(yè)界,我認為很大的問題是開發(fā)人員甚至是公司從來都沒有真正的把用戶當成上帝,當然,這和目前業(yè)界的項目有很大的關(guān)系,例如項目通常都是時間非常的緊張,N多開發(fā)人員投入只能盡量去保證功能、需求的實現(xiàn),在界面以及交互上往往不是那么的重視,但其實業(yè)界很多成功的產(chǎn)品都證明,功能往往不是決定性的因素,界面和交互才是用戶最為重視的,而且通常也是打敗對手的重要地方,為什么項目中不在重視功能的同時去重視界面和交互呢,大都是因為現(xiàn)在的框架在界面和交互變化的支撐上都不是很好,導(dǎo)致了每次界面的改動都要花費很大的成本,而交互上則一方面是現(xiàn)在交互設(shè)計師急為的缺少,另一方面是還沒引起企業(yè)足夠的重視,所以其實我覺得在web應(yīng)用開發(fā)框架上最大的目標就是為“把用戶當上帝”提供足夠的支持。
    遵循“把用戶當上帝,重界面和交互”的原則,本文從愿景角度闡述對于Web應(yīng)用開發(fā)框架的期望,同時從框架角度的基礎(chǔ)設(shè)施以及非功能性需求上對整個Web應(yīng)用開發(fā)框架給予說明,最后簡要的說說在架構(gòu)層次的關(guān)注點以及可選擇的技術(shù)體系。
    1. 愿景?
    ?? ★ Html的純潔性?
    ???? 這點就是體現(xiàn)“把用戶當上帝,重界面和交互”的原則,在保證了Html的純潔性的情況下,就可以在功能和頁面交互未改變的情況下無需編碼直接使用UI Design形成的html,形象的一個例子就是可以在用戶僅僅需要改變頁面的顯示樣式、布局的情況下,只需要直接讓UI工程師設(shè)計然后切割形成html放到系統(tǒng)中就可以直接用了,^_^
    ?? ★ 無編碼的實現(xiàn)CRUD型的應(yīng)用
    ??? 可以直接通過簡單的配置生成CRUD形式的應(yīng)用,這點還是從一個快速開發(fā)的角度來考慮的。
    2. 基礎(chǔ)設(shè)施?
    ? 基礎(chǔ)設(shè)施是框架的重要組成部分,作為框架就需要提供一定程度的基礎(chǔ)設(shè)施。
    ? 從愿景角度去看,Web應(yīng)用開發(fā)框架應(yīng)提供可綁定數(shù)據(jù)源的Web控件、對綁定的數(shù)據(jù)的操作的支持、頁面元素交互行為的支持、IDE/Web管理端。
    ? 首先說下幾個概念,數(shù)據(jù)源是指持久化性質(zhì)的源,如數(shù)據(jù)庫、文件;頁面元素大可以是頁面,小則可以到頁面上的任意域,如文本框;交互則是指用戶與界面產(chǎn)生的互動。
    ? ★ 提供基礎(chǔ)的可綁定數(shù)據(jù)源web控件?
    ????? 在這點上至少要提供樹控件、豐富的表格控件、Tab頁控件以及菜單控件,這些控件綁定的數(shù)據(jù)源既可是文件、也可以是jdbc形式的數(shù)據(jù)源、同樣還可以是ORM形式的數(shù)據(jù)源。???
    ? ★ 提供對綁定的數(shù)據(jù)源的操作的支持
    ????? 提供對綁定的數(shù)據(jù)源的通用操作的支持,減少重復(fù)勞動,如支持新增、編輯、刪除、分頁、查詢、統(tǒng)計分析、數(shù)據(jù)校驗以及數(shù)據(jù)實例的權(quán)限控制。?
    ? ★ 提供基礎(chǔ)的頁面元素交互行為的實現(xiàn)?
    ????? 提供對頁面元素交互行為的支持,如下拉時需要下拉出綁定了數(shù)據(jù)源的web控件等等,根據(jù)之上定義的一個觀點,元素可大至一個頁面,小至一個文本框,也就是說可以隨意定義頁面中的交互行為,在交互行為上至少支持下拉、彈出、鏈接以及Continuation四種形式。??
    ?? ★ 提供IDE/Web管理端?
    ???? IDE/Web管理端的提供主要是為了提高框架的可用性,通過管理端可導(dǎo)入一個html,對html中元素進行動態(tài)元素的綁定設(shè)置以及交互定義的設(shè)置。
    ? 在提供了這些基礎(chǔ)設(shè)施后就可以通過這套框架的快速的將UI Design產(chǎn)生html轉(zhuǎn)化為具備一定功能的系統(tǒng)運行界面,并且不對HTML產(chǎn)生任何的污染。
    3. 非功能需求?
    ? 作為框架而言,非功能需求也是非常重要的部分,尤其是象框架的擴展性、開放性、智能性、穩(wěn)定性以及高效性方面。
    ? ★ 擴展性?
    ??? 在擴展性上采用插件以及擴展點兩種策略來提供足夠的支撐,插件為框架的基礎(chǔ)設(shè)施的擴充提供支撐,擴展點為基礎(chǔ)設(shè)施本身的擴展以及靈活提供支撐。
    ? ★ 開放性
    ???? 在系統(tǒng)的開放性上一方面采取提供AOP的機制,使得對于系統(tǒng)的流程過程可控。
    ???? 另一方面由于元數(shù)據(jù)表達往往容易造成信息不完整的情況,在擴展性上特別要保證系統(tǒng)各層次的可替換性,這樣即使在框架無法支撐的應(yīng)用中也是可以在使用框架的基礎(chǔ)設(shè)施的同時自主開發(fā)部分的功能。
    ? ★ 智能性?
    ??? 智能性主要在元數(shù)據(jù)的智能性上以及框架擁有學(xué)習(xí)和記憶的功能上。智能性已經(jīng)逐步的成為了框架的重要考評點,越智能的框架用起來必然也就最為方便,而擁有學(xué)習(xí)和記憶能力的框架就更強了,^_^
    ? ★ 穩(wěn)定性?
    ??? 在穩(wěn)定性上采用微核機制來提供保證,在插件崩潰的情況下仍然保證系統(tǒng)核心的穩(wěn)定運行。?
    ? ★ 高效性?
    ??? 高效性方面主要采用緩存機制加以實現(xiàn),同時需要考慮框架在可伸縮性方面的支持。?
    4. 架構(gòu)關(guān)注點?
    ? 根據(jù)框架的基礎(chǔ)設(shè)施以及非功能需求的簡單描述,在框架的架構(gòu)層次最需要解決的是這么一些問題:
    ? ★ 微核機制?
    ???? 微核機制在目前已經(jīng)有N多的方案,在目前考察的情況下決定采用eclipse的equinox。
    ? ★ 插件策略
    ???? 在采用equinox的情況下這個問題自然解決。?
    ? ★ 擴展點策略?
    ???? 在采用equinox的情況下這個問題自然解決,只是在設(shè)計時也仔細的考慮基礎(chǔ)設(shè)施的擴展點的定義。?
    ? ★ 元數(shù)據(jù)的定義
    ???? 元數(shù)據(jù)的定義需要圍繞基礎(chǔ)設(shè)施而進行,同時重點在于保持元數(shù)據(jù)的可擴充性,另外在系統(tǒng)的層次的開放上也需要定義到元數(shù)據(jù)級別,也就是說假設(shè)現(xiàn)在系統(tǒng)的層次為command--service,那么開發(fā)人員可以選擇在某個模塊中替換command或者service的實現(xiàn)。?
    ? ★ 緩存機制策略?
    ???? 緩存機制著眼于前端的頁面緩存、后端的處理緩存和數(shù)據(jù)緩存。
    ? ★ Html無污染實現(xiàn)策略?
    ???? Html無污染的實現(xiàn)策略采用Decorator Html的方式,采用xml描述html中元素的方式,引擎解析形成最后的頁面的形式。
    ? ★ 控件綁定數(shù)據(jù)源的策略?
    ???? 控件在綁定數(shù)據(jù)源上著眼于提供對于數(shù)據(jù)獲取形式的支持,文件形式、jdbc形式、orm形式等等,另外則是在控件對于數(shù)據(jù)源的展現(xiàn)以及控件本身的交互控制上,同時要特別注意控件的擴展性以及開放性。
    ? ★ 數(shù)據(jù)源操作統(tǒng)一實現(xiàn)的策略
    ???? 形成統(tǒng)一實現(xiàn)的策略,同樣的需要考慮擴展性和開放性。?
    ? ★ 交互行為實現(xiàn)的策略?
    ???? 在下拉、彈出、鏈接以及Continuation的實現(xiàn)上考慮采用適當?shù)牟呗裕瑯拥囊攸c考慮擴展性以及開放性。

    這個框架有人感興趣嗎?如有志同道合的人的話準備拉起隊伍,^_^

    posted on 2006-04-26 21:06 BlueDavy 閱讀(2845) 評論(16)  編輯  收藏 所屬分類: @RIAWork

    評論

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-26 21:38 garnoopy

    問一個問題,Web控件采用哪種方式?服務(wù)器端解析還是客戶端解析?  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-26 21:47 BlueDavy

    準備采用客戶端解析的方式,就象我以前的一篇blog說的,客戶端解析唯一的焦點問題只是提供類似velocity for js的東西..  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-26 23:05 JC

    和我現(xiàn)在的一個項目MetaDrivenUI很相似 ^_^
    非常有興趣加入。  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-26 23:15 sharkmao

    留名  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 01:38 garnoopy

    yeah!我一直都想做的。
    準備隊伍吧  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 10:11 Harryson

    支持,希望中國也有更多更好的框架出來.  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 10:38 郁也風(fēng)

    強,這東西看著還真挺暈的,要不你也帶俺學(xué)學(xué)?  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 12:47 BlueDavy

    ^_^,成立了專門的群,暫時命名為RIAWork,歡迎大家申請加入討論關(guān)于RIAWork的一切:
    QQ群號: 20881998  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 16:29 IUSR

    Wow, cool~
    我原以為你會做一個基于Equinox的東西~  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 16:45 BlueDavy

    ^_^,這東西就是基于eclipse的equinox...  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-04-27 20:26 IUSR

    ft,沒仔細看后半部分……
    好強的項目~關(guān)注。  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-05-11 19:25 貝隆夫人

    支持  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-06-12 11:12 綠色使者、綠色心情

    挺好的想法,現(xiàn)在進展如何了?  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-06-12 13:10 BlueDavy

    正在進行網(wǎng)站的建設(shè)!  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-08-15 21:05 robbie

    但從你對“基礎(chǔ)設(shè)施”的描述來看,我?guī)缀跽J為是在描述JSF,呵呵,開個玩笑,對eclipse的osgi實現(xiàn)一直很感興趣,RCP方面的應(yīng)用就不用討論了,一直在關(guān)注equinox在server端的發(fā)展,雖然提供了serlvet及jsp的支持,但仍不太理想,希望能釋放出更多的關(guān)于riawork的架構(gòu)性信息,因為如果本身基于equinox的話,這個框架的成功與否其實不在于Framework的底層了,而是在equinox之上,能提供什么樣的組件?構(gòu)件?界面復(fù)用單元?功能利用單元?因為從前到后目前都已經(jīng)有可取的框架了,ssh 很想知道riawork的進展:)  回復(fù)  更多評論   

    # re: 基于元數(shù)據(jù)和RIA的Web應(yīng)用開發(fā)框架 2006-08-16 10:30 BlueDavy

    @robbie
    說的沒錯,呵呵,RIAWork基于Equinox,必然會在其之上首先構(gòu)造出B/S的基礎(chǔ)框架,對于RIAWork的具體介紹在后續(xù)將會逐步推出,在下個月會推出關(guān)于RIAWork的網(wǎng)站、規(guī)劃、架構(gòu)以及相關(guān)的一些建設(shè)情況的通報。

    目前正在完成一個基于Equinox的軟件管理框架,這個框架將在不久之后開源,雖然沒有什么很強的功能,但主要是希望做為一個Equinox的practice的展示,希望能引起國內(nèi)更多的人使用Equinox。

    多謝大家的關(guān)注,目前www.riawork.org網(wǎng)站正在建設(shè)中,期待大家的意見!  回復(fù)  更多評論   

    公告

     









    feedsky
    抓蝦
    google reader
    鮮果

    導(dǎo)航

    <2006年4月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456

    統(tǒng)計

    隨筆分類

    隨筆檔案

    文章檔案

    Blogger's

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲中文字幕在线无码一区二区| 亚洲AV成人片色在线观看高潮| 中文字幕亚洲码在线| 无码av免费一区二区三区试看| 亚洲国产成人一区二区精品区| baoyu777永久免费视频| 国产亚洲av片在线观看16女人| a毛片在线看片免费| 国产亚洲精品自在久久| 华人在线精品免费观看| 亚洲成人精品久久| 国产h肉在线视频免费观看| 亚洲免费电影网站| 永久免费观看的毛片的网站| 亚洲国产成人AV网站| 亚洲日本中文字幕一区二区三区| 亚洲视频在线免费| 亚洲v高清理论电影| 一区二区无码免费视频网站 | 亚洲一区二区三区91| 天天摸天天碰成人免费视频| 福利片免费一区二区三区| 国产成人精品亚洲精品| 久久国产精品免费看| 中文字幕亚洲码在线| 久久久久亚洲av成人无码电影 | 18国产精品白浆在线观看免费| 国产精品亚洲综合久久| jizzjizz亚洲| 免费无码中文字幕A级毛片| 亚洲色大成网站www久久九| 亚洲一区精品伊人久久伊人| 久久青草国产免费观看| 亚洲综合成人婷婷五月网址| 亚洲一级特黄大片在线观看| 免费无码中文字幕A级毛片| 亚洲a∨无码精品色午夜| 亚洲av丰满熟妇在线播放| 在线jyzzjyzz免费视频| 国产麻豆一精品一AV一免费 | 全黄A免费一级毛片|