張昊

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

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

          ----- Original Message -----
          From: "張昊" < hao.zhang.hi@gmail.com >
          To: < jinhe@51cto.com >
          Sent: 2011-03-16 17:15:50 +0800
          Subject: J-Hi張昊對您的回復(fù)
          標(biāo)題 發(fā)件人 EMAIL 時間 留言方式  
          技術(shù)咨詢 金賀 jinhe@51cto.com 03-14 16:10 私人留言 Delete
          您好,張昊先生,我是51CTO的金賀,有幾個問題想請教您一下,請問您方便嗎?




          我是張昊,請教可真不敢當(dāng)。如果有什么我能效勞的,您直管說。盼回復(fù)



          在 2011年3月16日 下午5:45,金賀 <jinhe@51cto.com>寫道:

          非常感謝您,我是看到您的帖子對您很好奇,主要有下面幾個問題想咨詢您一下。

          1. 您是什么時候接觸到J-HI這項技術(shù)的,基于什么樣的目的呢?

                 我是J-Hi項目的發(fā)啟者, 從2005年末時我就開如做這個項目了。當(dāng)時它還只是大家為了探索如何使程序開發(fā)更好、更快速、易于管理而又不影響開發(fā)人員的編程習(xí)慣的一個構(gòu)想,當(dāng)初它還只是個底層框架或開發(fā)工具,核心團隊成員就是用這個小小的底層框架做了很多項目,從未想過會將它開源出來(因為我們覺得做 得還不夠好,擔(dān)心開源后會被同行笑話)。后來隨著所接項目的逐漸增多,J-Hi所涉足的行業(yè)領(lǐng)域也不斷廣闊,因此我們也不得不適應(yīng)需求的變化不斷的為它加 入新的功能,慢慢的它變得越來越強壯。突然有一天有人提議我們將它開源吧,大家這才為平臺的開源做準(zhǔn)備。從我們今年1月14日開始推廣以來,有很多的愛好者加到其中,這樣我和我的團隊感到很欣慰,覺得我們努力得到了大家的認(rèn)可!

          2. 這項技術(shù)有什么優(yōu)點?是否已經(jīng)在實踐中證實呢?

                

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

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

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

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

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

          平臺到底生成了些什么?

          組件化

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

              J-Hi的理論基礎(chǔ)請參見:http://www.blogjava.net/hao-zhang-hi/archive/2011/02/27/345277.html

               J-Hi就是從實際的項目開發(fā)過程中誕生與完善起來的,它把主要把關(guān)注放在如何解決快速開發(fā)與降低成的問題上。如果從一個項目的整個生命期來看,實際上開發(fā)只占了總項目的成本的一小部分,然后就是這一小部分還是有大量的成本損耗。比如在管理上,人員變動對開發(fā)的影響;在技術(shù)偏向性上,增加了開發(fā)人員的學(xué)習(xí)曲線從而使成本提高;在功能的復(fù)用性上,在項目開發(fā)過程會發(fā)現(xiàn)每次都會做一些稍有差異但實際是功能重疊的東西;在具體coding過程中,會寫一樣模式化的但又不得不寫的東西(如POJO等)。J-Hi就是為了解決上述問題而產(chǎn)生的。
               當(dāng)然J-Hi還有弱小,以后我們還不斷的完善,使它越來越強大。

          3. 哪些領(lǐng)域能運用這項技術(shù),您能有一些好的建議么?

               我們用J-Hi做過很多領(lǐng)域,互聯(lián)網(wǎng)我們做過電子商務(wù)的網(wǎng)站,物聯(lián)網(wǎng)我們做過RFID的票務(wù)管理系統(tǒng),傳統(tǒng)行業(yè)的ERP、進銷存、OA這些我們都有做過
          http://hi.baidu.com/haozhang_hi/blog/item/76fdf13575d492fa3d6d970c.html 
               這是我們曾經(jīng)做過的部分項目,給您做個參考,哈哈。
               
               J-Hi開發(fā)平臺實際上它是不拘泥于某種技術(shù)或某個領(lǐng)域的開發(fā)工具。我們拿sturts舉例來說,有人用它做互聯(lián)網(wǎng),有人用它做CMS,也可能有人用它做物聯(lián)網(wǎng)的表現(xiàn)層,而它本身是中立的它只是個工具不受限于具體的領(lǐng)域。J-Hi也是一樣

               對J-Hi的更多描述,請您參見:http://www.blogjava.net/hao-zhang-hi/archive/2011/02/14/344303.html

          4. 對于剛剛接觸J-HI這項技術(shù)的人群,有什么好的學(xué)習(xí)建議

               平臺類的產(chǎn)品對于使用它的開發(fā)者來說都有同樣的特點:使聰明人更加聰明,使懶惰的人更加懶惰(從而失去了思想)。我希望所有接觸J-Hi的愛好者都能成為前者,而不是后者。因為在J-Hi的設(shè)計之初間中的一個理念就是,讓它成為希望了解主流框架人一個學(xué)習(xí)工具。從這一點來看,J-Hi也跟Appfuse很象,但要比Appfuse更完善,更全面,更貼進去業(yè)務(wù)。

           

              另:我可以把我的回復(fù)發(fā)到我的博客上嗎?


          在 11-3-17,金賀<jinhe@51cto.com> 寫道:
          > 非常感謝您百忙之中回復(fù)我,您的這些回復(fù)使我茅塞頓開呀,看來我也得接觸一下這個技術(shù)了,回復(fù)您可以隨便發(fā)送的。
          >
          > 祝您工作順利,身體健康。以后我有問題還得向您請教,希望您不會拒絕吧,哈哈

          posted on 2011-03-17 11:46 張昊 閱讀(1805) 評論(3)  編輯  收藏

          Feedback

          # re: 關(guān)于J-Hi與51CTO網(wǎng)站編輯的郵件往來 2011-03-17 13:23 日月雨林@gmail.com
          我也收到類似的郵件了。  回復(fù)  更多評論
            

          # re: 關(guān)于J-Hi與51CTO網(wǎng)站編輯的郵件往來[未登錄] 2011-03-18 12:44 pizzazz
          估計是群發(fā)的,樓主比較老實,估計受寵若驚了  回復(fù)  更多評論
            

          # re: 關(guān)于J-Hi與51CTO網(wǎng)站編輯的郵件往來 2011-03-18 13:58 張昊
          那里,他把我們之間的郵件做了整理放到了網(wǎng)站上,參見:http://developer.51cto.com/art/201103/249704.htm  回復(fù)  更多評論
            


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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 田东县| 泰安市| 凤冈县| 长宁区| 襄汾县| 都江堰市| 青田县| 错那县| 南靖县| 清流县| 六枝特区| 宜良县| 钟祥市| 苍溪县| 潢川县| 安丘市| 井冈山市| 木兰县| 正镶白旗| 吉木萨尔县| 和林格尔县| 静安区| 陆良县| 苏尼特右旗| 二手房| 同心县| 婺源县| 永宁县| 句容市| 武胜县| 南宫市| 沁阳市| 余庆县| 女性| 隆回县| 大兴区| 无锡市| 高淳县| 杨浦区| 武川县| 呼和浩特市|