張昊

          J-Hi(http://www.j-hi.net)

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            45 Posts :: 1 Stories :: 110 Comments :: 0 Trackbacks

          最近很多網(wǎng)友問我同樣的問題,那就是J-Hi與其它的平臺類產(chǎn)品有什么區(qū)別?它有哪些獨(dú)特的特點(diǎn)。實(shí)際在我看來J-Hi與目前任何其它平臺類的產(chǎn)品的出發(fā)點(diǎn)或稱之為初宗都是相同的,那就是想解決如何使開發(fā)更快速、更高效,如何降低項(xiàng)目的成本(不只是快速開發(fā)所帶來的成本降低,也包括項(xiàng)目的管理成本)。

          總的來說,目前市場上的平臺類產(chǎn)品所采用的核心技術(shù)無非兩種,一種是模型驅(qū)動(dòng)(后臺有一個(gè)模型引擎來負(fù)責(zé)解析與計(jì)算這些業(yè)務(wù)模型從而得到預(yù)期的運(yùn)算結(jié)果);另一種是代碼生成(按照定義的模型通過生成器生成全部源文件)。從技術(shù)本身來看,這兩種技術(shù)都不算什么新鮮東西,只是隨著計(jì)算機(jī)運(yùn)算能力的提高,相關(guān)技術(shù)的不斷成熟,使這兩種技術(shù)應(yīng)用于業(yè)務(wù)開發(fā)平臺成為可能,因此單純從技術(shù)先進(jìn)性來看,那我覺得都沒有什么在技術(shù)可以稱道的地方。反之,平臺它是多種技術(shù)的融合體,尤其是業(yè)務(wù)開發(fā)平臺不只包括技術(shù)本身還會(huì)包含一些通用的業(yè)務(wù)以及一些開發(fā)工具。因?yàn)檫@些的差異,就形成了各類平臺產(chǎn)品的差異性。在此讓我們來分析一下J-Hi Java快速開發(fā)平臺自身的特點(diǎn)(即與其它平臺的不同之處):

          快速的按需動(dòng)態(tài)搭建

          目前平臺支持的框架有:webworkstruts2springhibernateibatis2ibatis3,對于這些框架您可以通過可視化(J-HI Studioeclipse插件)的方式隨意組合,通過工程創(chuàng)建向?qū)В詣?dòng)化的按照你所選擇的框架快速的動(dòng)態(tài)搭建起開發(fā)工程。我們之所以將J-Hi做成多框架動(dòng)態(tài)搭建,主要是考慮到不同企業(yè)的開發(fā)團(tuán)隊(duì)對技術(shù)的傾向性會(huì)有很大差別,比如對于ORM有的人就喜歡hibernate,而有的人就覺得hibernate太強(qiáng)硬,喜歡用半自動(dòng)化的ibatisJ-Hi基于這個(gè)目的為開發(fā)者提供了更多的可選擇性。在此要注意對于平臺多框架的集成并不象一般意思上的集成(即幾個(gè)框架拼接在一起就可以象appfuse一樣),因?yàn)槠脚_的集成還要包括很多通用業(yè)務(wù)并且與數(shù)據(jù)庫表是有關(guān)系的(一般搭建多框架是沒有業(yè)務(wù)的所有的東西都要由你親自去開發(fā),而平臺會(huì)有很多的業(yè)務(wù)已經(jīng)預(yù)留在平臺中)。舉個(gè)例子:比如安全管理,這是平臺的一個(gè)通用業(yè)務(wù)包括角色、權(quán)限等。在切換到不同的框架比如strutswebworkhibernateibatis時(shí),平臺的底層要自動(dòng)的適應(yīng)這種變化,這是有一定的創(chuàng)新點(diǎn)的J。當(dāng)然我們以后還會(huì)集成更多、更優(yōu)秀的框架在平臺之中,比如SpringMVCSpringJDBC等等,在數(shù)據(jù)庫端我們也會(huì)再多支持一些數(shù)據(jù)庫,當(dāng)然集成數(shù)據(jù)庫也不是傳統(tǒng)意義上的只是一個(gè)數(shù)據(jù)庫連接,而是針對不同的數(shù)據(jù)庫差異會(huì)做不同的方言,不同的數(shù)據(jù)庫腳本還要有相應(yīng)的生成模板等等。

          因此你會(huì)發(fā)現(xiàn)快速按需動(dòng)態(tài)搭建,并不是傳統(tǒng)意義上的多框架集成那么簡單,而是對應(yīng)每一種框架(數(shù)據(jù)庫)平臺都會(huì)提供一套完整的解決方案。總之多框架集成對于J-Hi來說,是牽一發(fā)而動(dòng)全身的事情,變動(dòng)一個(gè)框架,包括每一個(gè)頁面,每一個(gè)java類,每一個(gè)配置文件都要隨之而動(dòng)態(tài)的變化。因此它是系統(tǒng)級的工程而非簡單的多個(gè)框架拼接。

          完整而系統(tǒng)的生成方案

                 代碼生成或生成器這實(shí)際上在十年前就已經(jīng)有的東西,無論是實(shí)現(xiàn)原理還是具體的工具都不是新鮮事物。J-Hi之所以將代碼生成也算作自己的特色,是因?yàn)樗耐暾耘c系統(tǒng)性。從完整性來看,J-Hi的生成是一套含蓋從數(shù)據(jù)庫底層一直到頁面端全部的解決方案,包括數(shù)據(jù)庫表;權(quán)限、菜單、多語言等相關(guān)基礎(chǔ)數(shù)據(jù);java類文件;JSPjs文件;相關(guān)配置文件等等,因此保證了生成即可運(yùn)行,從單元體上來看生成文件是完整的,是可獨(dú)立運(yùn)行的。從系統(tǒng)性來看,生成的文件是隨著你選擇的框架不同而不同的,生成的基礎(chǔ)是隨著框架與數(shù)據(jù)庫的差異而隨需變化,系統(tǒng)的解決了生成器的僵硬性,從而靈活的適應(yīng)開發(fā)環(huán)境。因此J-Hi的生成方案是系統(tǒng)的,是適應(yīng)不同框架與數(shù)據(jù)庫的生成方案的。

          平臺到底生成了些什么?

          組件化

          J-Hi把組件劃分為四類,技術(shù)組件、實(shí)體組件、業(yè)務(wù)組件與系統(tǒng)組件,具體內(nèi)容請參見平臺組件化

          posted on 2011-03-09 14:41 張昊 閱讀(1513) 評論(3)  編輯  收藏

          Feedback

          # re: 論J-Hi平臺的特點(diǎn) 2011-03-09 16:19 power cord
          看完以后,我還不知道J-Hi到底是什么東西呢、  回復(fù)  更多評論
            

          # re: 論J-Hi平臺的特點(diǎn) 2011-03-09 17:23 張昊
          對于J-Hi是什么?
          在我的其它博文中,請參見:
          http://www.aygfsteel.com/hao-zhang-hi/archive/2011/02/16/344454.html  回復(fù)  更多評論
            

          # re: 論J-Hi平臺的特點(diǎn) 2011-03-09 17:24 張昊
          sorry 發(fā)錯(cuò)URL了
          http://www.aygfsteel.com/hao-zhang-hi/archive/2011/02/14/344303.html

          哈哈這個(gè)是正解  回復(fù)  更多評論
            


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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 漳浦县| 和硕县| 肃北| 瑞金市| 杨浦区| 绵竹市| 甘南县| 尤溪县| 鱼台县| 环江| 孝义市| 瑞安市| 岳西县| 嘉祥县| 项城市| 泗阳县| 新绛县| 石嘴山市| 基隆市| 弥勒县| 吉水县| 柳河县| 正宁县| 赤壁市| 杭锦后旗| 曲松县| 应城市| 津南区| 罗山县| 比如县| 营口市| 宾阳县| 银川市| 兴隆县| 崇义县| 商河县| 甘洛县| 泾阳县| 天柱县| 海南省| 凤凰县|