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

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

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

    牙牙窩

    BlogJava 聯(lián)系 聚合 管理
      8 Posts :: 21 Stories :: 10 Comments :: 0 Trackbacks
        最近項(xiàng)目組要求使用普元EOS進(jìn)行項(xiàng)目開發(fā),使用了兩個(gè)月左右,雖然說有一些心得(這個(gè)以后會(huì)寫出來),但更多是看到了不足的地方,在這里就討論一下一個(gè)成熟的應(yīng)用框架到底應(yīng)該有哪些因素。

    底層技術(shù):
        Application Framework(下稱應(yīng)用框架)是為解決問題而生的,無論是基于JAVA、C++、Ruby等等語言,都必須有基礎(chǔ)技術(shù)的支持。如JAVA就有經(jīng)典的Struts+Spring+Hibernate的組合,因此,一個(gè)成熟的應(yīng)用框架,必須擁有完善的MVC框架,以及完整的業(yè)務(wù)組件管理容器,還有一個(gè)成熟的數(shù)據(jù)訪問框架。這個(gè)是一切的基礎(chǔ)。

    權(quán)限管理:
        擁有一個(gè)成熟基礎(chǔ)權(quán)限架構(gòu)能夠?yàn)閼?yīng)用框架增色不少。如果能夠和框架本身更好地融合,這樣更好。其實(shí)目前有很多實(shí)現(xiàn)是俄可以借鑒的,如:ACEGI和Spring。

    UI:
        標(biāo)簽已經(jīng)非常流行,擁有完善的標(biāo)簽庫是必不可少的,Struts是個(gè)很好的典范。
        Ajax大行其道,如果沒有整合一些方便易用的AJAX控件,估計(jì)也算不上是一個(gè)好框架。
        另外還有類似于Freemarker、Velocity之類的簡(jiǎn)化UI開發(fā)的好東東,整合一兩個(gè),對(duì)于減少開發(fā)、提高維護(hù)性有很大幫助。

    開發(fā)工具:
        提供敏捷快速的開發(fā)工具是一個(gè)成熟應(yīng)用框架所不可或缺的。使用一個(gè)成熟的應(yīng)用框架的開發(fā)工具進(jìn)行開發(fā),可以讓開發(fā)者最大程度減少對(duì)于技術(shù)上的瓶頸,讓開發(fā)者很輕松就可以完成高質(zhì)量的代碼,剩下的精力可以用于專注于業(yè)務(wù)等其它方面。
        另外還有像:?jiǎn)卧獪y(cè)試、應(yīng)用部署等等方面,都是必不可少的一部分。(PS:我是非常痛恨維護(hù)幾百行ANT的build.xml代碼的人)
        這里不得不稱贊一下普元,普元提供的開發(fā)環(huán)境和它自身的底層技術(shù)融合的非常好,對(duì)于開發(fā)者而言,是非常方便的,可以不需要很多的培訓(xùn)就可以使用IDE開發(fā)出完整的應(yīng)用。而且測(cè)試和部署都很方便。

    代碼生成器:
        其實(shí)這個(gè)應(yīng)該和開發(fā)工具放在一起,但是因?yàn)楸容^重要,所以單獨(dú)提出來說。
        一個(gè)好的代碼生成器可以省去開發(fā)人員很多不必要的麻煩,能夠非常大地提高開發(fā)效率。普元的代碼生成器是個(gè)不錯(cuò)的典范。
        我們公司自己也有一個(gè)JOP的應(yīng)用框架,但非常簡(jiǎn)陋,和普元的設(shè)計(jì)思想不可同日而語。呵呵~~有點(diǎn)扯遠(yuǎn)了,但能夠看得出,代碼生成器對(duì)于應(yīng)用框架是必不可少的。

    協(xié)同開發(fā):
        整合一個(gè)好的協(xié)同開發(fā)和版本管理工具,能夠最大程度地降低溝通成本。除了能夠支持類似SVN或VSS之類的代碼版本管理工具之外,還應(yīng)該融合進(jìn)類似Visual Studio Team的任務(wù)管理和缺陷管理工具。最好擁有一個(gè)可以進(jìn)行自我積累的知識(shí)庫的實(shí)現(xiàn)。WIKI是個(gè)不錯(cuò)的主意。

    設(shè)計(jì)器:
     
       我提出這個(gè)是因?yàn)榭吹搅薎BM的RUP,擁有一個(gè)能夠從設(shè)計(jì)到代碼實(shí)現(xiàn)乃至后面的測(cè)試這樣一個(gè)全流程開發(fā)工具,一直是IT人員的一個(gè)美好夢(mèng)想。
        一個(gè)好的設(shè)計(jì)器,可以很輕松地在設(shè)計(jì)圖和代碼之間相互轉(zhuǎn)換,對(duì)于需求變更,設(shè)計(jì)管理、甚至項(xiàng)目后期的文檔都有很重要的意義。
        這里又要提到普元,普元在這方面很聰明,走了一條不同的路,它把代碼變成一個(gè)個(gè)圖標(biāo)時(shí),本身就實(shí)現(xiàn)了對(duì)于設(shè)計(jì)圖和代碼之間互轉(zhuǎn)關(guān)系。(當(dāng)然,實(shí)現(xiàn)的方式有點(diǎn)土,而且沒有辦法支持標(biāo)準(zhǔn)的UML)

    運(yùn)行容器:

        大家可能覺得奇怪,容器為什么要單獨(dú)提出來說,很多JAVA開發(fā)者都會(huì)說,只有遵循JAVA標(biāo)準(zhǔn)就可以啦~。其實(shí)不然,一個(gè)成熟的應(yīng)用框架當(dāng)然要考慮其兼容性,但是有時(shí)候,過多考慮兼容性往往會(huì)犧牲效率。事實(shí)上,很多應(yīng)用框架被開發(fā)出來,都是有一定的局限性的使用場(chǎng)景,針對(duì)使用場(chǎng)景的環(huán)境進(jìn)行優(yōu)化,絕對(duì)比使用通用的方法效率要高的多。如我們公司的移動(dòng)項(xiàng)目使用的是WebSphere,我們的框架就有一個(gè)針對(duì)WebSphere優(yōu)化的版本,但同時(shí)也存在一個(gè)通用版本。
        當(dāng)然還有其它方面也可以引用這種思路,比如使用Oracle自帶的一些JDBC類,其效率就比使用JAVA標(biāo)準(zhǔn)的JDBC類要高得多。

        其實(shí)應(yīng)用框架被創(chuàng)造出來的目的就是快速、高效、低成本地解決問題,這個(gè)大家都知道,但是何謂“成熟”,估計(jì)100個(gè)人應(yīng)該有100個(gè)答案,這里我的理解就是開發(fā)快捷、較低的學(xué)習(xí)成本、運(yùn)行穩(wěn)定,就是一個(gè)成熟的應(yīng)用框架。

    PS:上面好像說了一些不少普元的好話,大家千萬不要以為我是普元的“托”,晚點(diǎn)我再寫遍罵它的文章吧~~呵呵~~。其實(shí)我更喜歡SpringSide,但是除了“底層技術(shù)”這塊之外,在其它方面還有很長的路要走,希望江南白衣兄能夠堅(jiān)持下去。



    posted on 2008-04-17 23:14 大牙 閱讀(344) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 免费在线观看毛片| 亚洲色欲久久久综合网东京热| 久久国产精品国产自线拍免费| 黄色a级片免费看| 亚洲理论电影在线观看| 亚欧在线精品免费观看一区| 日韩欧美亚洲中文乱码| 国产精品亚洲成在人线| 国产va精品免费观看| 日本免费精品一区二区三区| 亚洲精品国产福利片| 亚洲五月午夜免费在线视频| 国产成人精品免费视频大全麻豆| 无码久久精品国产亚洲Av影片| 久久成人18免费网站| 亚洲男人天堂2022| 丁香五月亚洲综合深深爱| 国产一卡2卡3卡4卡2021免费观看 国产一卡2卡3卡4卡无卡免费视频 | 日韩人妻无码精品久久免费一| 亚洲色偷拍区另类无码专区| jjizz全部免费看片| 全部一级一级毛片免费看| 亚洲一级毛片视频| 亚洲av综合色区| 免费看一级做a爰片久久| 国产成人免费在线| 国产99精品一区二区三区免费 | 亚洲精品在线免费观看| 亚洲精品国精品久久99热 | 免费看少妇作爱视频| 久久午夜羞羞影院免费观看| 无码日韩人妻AV一区免费l | 亚洲自偷自偷精品| 国产成人免费一区二区三区| 国产精品免费网站| 永久免费av无码入口国语片| 黄网站在线播放视频免费观看| 国产亚洲精品成人a v小说| 日本免费一二区在线电影| 免费的黄色的网站| 亚洲AV无码精品国产成人|