對(duì)“J-Hi”Java快速開(kāi)發(fā)平臺(tái)問(wèn)題的答疑解惑
J-Hi平臺(tái)的市場(chǎng)定位與目標(biāo)用戶是什么?競(jìng)爭(zhēng)對(duì)手又有哪些?
J-Hi自 誕生 之日起就把目標(biāo)定位在如何解決開(kāi)發(fā)的高效性上,這是我們的初衷也是我們的最終目的,對(duì)于高效性J-Hi對(duì)此的解決方案是:
1)易于上手,學(xué)習(xí)成本低:J-Hi沒(méi)有自己的標(biāo)準(zhǔn),J-Hi是標(biāo)準(zhǔn)的執(zhí)行者與推廣者。因此我們采用的都是大家很熟悉的成熟技術(shù),如spring、hibernate、struts、ibaties、webwork
2)代碼生成的方式:說(shuō)到底J-Hi是程序員給程序員開(kāi)發(fā)的工具,因?yàn)橹挥羞@樣才會(huì)使項(xiàng)目開(kāi)發(fā)更可控(從技術(shù)本身來(lái)說(shuō)沒(méi)有萬(wàn)能的工具,只有coding才是萬(wàn)能的)。J-Hi是想使程序員從千篇一律而又枯燥繁瑣的重復(fù)代碼中解放出來(lái),通過(guò)代碼生成的方式由生成器全部生成,而使開(kāi)發(fā)人員把精力更多的去放在關(guān)注業(yè)務(wù)本身上。
3)平臺(tái)的底層支撐:從技術(shù)上我們?cè)贘-Hi與其它框架的整合上做了一些工作,目的是使開(kāi)發(fā)人員更方便的去調(diào)用,使代碼編寫(xiě)起來(lái)更高效。而且不同框架的組合是動(dòng)態(tài)搭建的,從而使您有更多的選擇性,更適合開(kāi)發(fā)人員的技術(shù)掌握情況。從業(yè)務(wù)上J-Hi提供了一些抽象的業(yè)務(wù)組件,比如組織機(jī)構(gòu)、權(quán)限、菜單、任務(wù)調(diào)度、枚舉(數(shù)據(jù)字典)、日志等等。
4)組件化模式:J-Hi認(rèn)為每個(gè)服務(wù)就是一個(gè)業(yè)務(wù)組件,業(yè)務(wù)組件可以在不同的系統(tǒng)之間來(lái)回遷移,從而實(shí)現(xiàn)業(yè)務(wù)組件的復(fù)用性。從另一方面來(lái)看,也更有利于公司的技術(shù)與業(yè)務(wù)積累,不用做重復(fù)的工作。對(duì)于組件化我們會(huì)提供完整的文章后續(xù)討論。
5)基于使項(xiàng)目管理更規(guī)范,從而使項(xiàng)目的開(kāi)發(fā)更高效:因?yàn)榇a生成所有的層次結(jié)構(gòu)與編寫(xiě)方式都是規(guī)范的(即使是一個(gè)屬性名),因此更方便開(kāi)發(fā)人員的相互溝通與閱讀,也是因?yàn)檫@個(gè)原因從而使人員流動(dòng)的風(fēng)險(xiǎn)大大降低(繼任者可以很快的讀懂別人寫(xiě)的代碼,很快的投入到工作中去。誠(chéng)然新來(lái)的人還要了解業(yè)務(wù),但對(duì)于開(kāi)發(fā)人員來(lái)說(shuō)他只要關(guān)心自己一部分的業(yè)務(wù)需求,而不用整個(gè)系統(tǒng)去了解需求)。
6)現(xiàn)在項(xiàng)目開(kāi)發(fā)最大的問(wèn)題是開(kāi)發(fā)與文檔的不同步:目前我們?cè)谶@一部分已有自己的解決方案,但因?yàn)榫εc資源有限還沒(méi)有形成真正的產(chǎn)品化的東西L
對(duì)于J-Hi來(lái)說(shuō)目標(biāo)用戶主要是中小型及大型但技術(shù)積累不足的軟件公司和系統(tǒng)集成商。說(shuō)到競(jìng)爭(zhēng)對(duì)手,因?yàn)镴-Hi是開(kāi)源的,既然開(kāi)源就應(yīng)該抱著一個(gè)開(kāi)放的心態(tài)我們沒(méi)有真正的競(jìng)爭(zhēng)對(duì)手。如果真說(shuō)有的話,我想應(yīng)該是想舍棄程序員實(shí)現(xiàn)非編碼開(kāi)發(fā)的產(chǎn)品吧!
J-Hi的有何創(chuàng)新點(diǎn)?優(yōu)勢(shì)又在哪里?
在說(shuō)到創(chuàng)新點(diǎn)之前我想先說(shuō)一下我們對(duì)創(chuàng)新的理解,什么是創(chuàng)新,我們覺(jué)得不過(guò)是在前人的基礎(chǔ)上前進(jìn)了那么一小步,大部分還是吃著前人嚼過(guò)的饃。我覺(jué)得Spring 的AOP在目前的主流技術(shù)里是最有創(chuàng)新的,但分析到最底層時(shí)也不過(guò)是動(dòng)態(tài)代理(不過(guò)能運(yùn)用到如此程度也不得不讓人敬佩的五體投地)。嚴(yán)格意義的說(shuō)平臺(tái)沒(méi)有創(chuàng)新只不過(guò)是十多年開(kāi)發(fā)的經(jīng)驗(yàn)積累,即便是有創(chuàng)新也只是對(duì)各種技術(shù)的融合,也是通過(guò)這種融合使使用者有更多的選擇性。目前我們正在做與國(guó)內(nèi)優(yōu)秀框架的融合工作,包括DWZ和simpleframework。以后我們也會(huì)秉承這種思想,融合更多更優(yōu)秀的東西加到J-Hi之中去。
對(duì)于J-Hi你們想怎樣運(yùn)作?是商業(yè)運(yùn)作嗎?
是的,我們是商業(yè)。原因很簡(jiǎn)單在中國(guó)的開(kāi)源大環(huán)境不好。象在國(guó)外一般都會(huì)有一些基金的支助或是代碼捐贈(zèng),但中國(guó)現(xiàn)在我還沒(méi)發(fā)現(xiàn)。大家都是興趣,是對(duì)編程的一種熱愛(ài),而且大多都是兼職在做。我覺(jué)得大家的出發(fā)點(diǎn)都是好的但是可操作性太差,因?yàn)闆](méi)有商業(yè)運(yùn)作就很難提供優(yōu)質(zhì)的服務(wù),沒(méi)有好的服務(wù)也就抑制了產(chǎn)品的推廣,沒(méi)了用戶群產(chǎn)品就不會(huì)有旺盛的生命力。我最大的愿望是:中國(guó)的開(kāi)源團(tuán)隊(duì)聯(lián)合起來(lái)!
那你們想如何通過(guò)平臺(tái)盈利呢?
現(xiàn)在我們想到的主要是通過(guò)服務(wù)與技術(shù)支持,當(dāng)然J-Hi以后要走的路還很長(zhǎng),以后還要很多的事情要做,比如基于平臺(tái)的增值組件,我們把增值組件劃分為三種形式:
1、 開(kāi)源組件:比如CRM、CMS、進(jìn)銷(xiāo)存等
2、 免費(fèi)組件:比如:SpringMVC、SpringJDBC等
3、 收費(fèi)組件:比如:報(bào)表系統(tǒng)、在線會(huì)議、工作流等
這么多的工作你們幾個(gè)怎么可能完成呢?
我們的想法是J-Hi不只是一個(gè)開(kāi)發(fā)工具,更是一個(gè)開(kāi)放的生態(tài)社區(qū),希望大家都能融入進(jìn)來(lái),也許前期我們會(huì)有一些投入,但我們的目的是想讓更多的人加入到這個(gè)社區(qū)中來(lái),大家共同工作,從而實(shí)現(xiàn)雙贏,使每個(gè)付出的人都有收益。
你們的工作流為什么不開(kāi)源?
是就這個(gè)問(wèn)題有很多的朋友問(wèn)過(guò)我,有人還說(shuō)我們是假開(kāi)源偽開(kāi)源。也許他們說(shuō)得也有道理,但中國(guó)的開(kāi)源環(huán)境我們也是沒(méi)有辦法的事。總不能餓著肚子做開(kāi)源吧,生存是目前擺在我們團(tuán)隊(duì)最大的問(wèn)題,如果生存都成問(wèn)題,那還怎么可能把事情做下去呢。所以對(duì)此還請(qǐng)大家諒見(jiàn),工作流開(kāi)源對(duì)我們來(lái)說(shuō)只是遲早的問(wèn)題,而不是想著死抱著不放。
【編輯推薦】