關(guān)注springside已經(jīng)有一段時(shí)間,
最早是從2.0版本開始的,現(xiàn)在已經(jīng)到了3.1.2了。
ss給我的感覺是從新鮮到興奮到失望。這兒發(fā)點(diǎn)牢騷。
主要體現(xiàn)在下面幾點(diǎn);
1.springside項(xiàng)目的延續(xù)性不好
ss2到ss3.1.2隨著版本號(hào)的增加功能確越來越小。做的一些demo演示越來越不實(shí)用。
很懷念書店的demo,這個(gè)例子可以所是讓ss經(jīng)過了一個(gè)實(shí)踐的檢驗(yàn),里面的技術(shù)細(xì)節(jié)考慮的要比現(xiàn)在的miniservice,miniexample要周全的多。
我喜歡ss一方面是因?yàn)樗男迈r的架構(gòu)組合和新技術(shù)指導(dǎo)性,另一方很大程度上是因?yàn)檫@個(gè)demo,他讓我看到了新架構(gòu)帶來的生產(chǎn)力,實(shí)在的東西。
而現(xiàn)在你在從springside官方網(wǎng)站下載SpringSide 2.0 RC1 all in one,下來運(yùn)行一下看看,沒有半天到一天的時(shí)間更不不可能跑起來。這個(gè)里面使用maven來管理jar包,使用ant來調(diào)用,遺憾的是springside原先建立的私有l(wèi)ib Repository已經(jīng)消失了,在這個(gè)項(xiàng)目中依賴的包非常多,有些是可以在公共的Repository找到的,這部分到好辦直接加入公共的Repository地址就可以了,而有以部分是經(jīng)過springside封裝或重新打包的這些包何處去尋,那只好把這一部分屏蔽掉了,保證項(xiàng)目的運(yùn)行。原來引入這個(gè)maven工具是為了很方面明晰的找到依賴的包,這下倒好反而成了絆腳石。要理清楚里面的關(guān)系,還是要一點(diǎn)時(shí)間的。這個(gè)就是項(xiàng)目不延續(xù)造成的。
那有人就奇怪了,說你為什么不用最新的版本,而這也是我的苦衷,現(xiàn)在的最新版本倒是很輕量,把這些東西全砍掉了,只留下了一些miniexample,很難有進(jìn)一步的更細(xì)節(jié)一點(diǎn)的指導(dǎo),而且這些東西沒有經(jīng)過一些實(shí)際項(xiàng)目的檢驗(yàn),可能還是會(huì)在細(xì)節(jié)上有所欠缺。就像一開始ss被封裝成像ruby一樣類似自動(dòng)crud功能,而這個(gè)想法固然很cool但在實(shí)際應(yīng)用中還是一個(gè)花架子,有很多不周全的地方,如果對(duì)基類不是很了解的情況下很難使用,反而沒有自己寫的明晰快速。
2.定位不明晰
ss2到ss3.12像是走了兩個(gè)極端,一個(gè)功能非常多(包括 jms,mail,jbossrules,lucene,compass,acegi,cxf,jbpm,activemq),一個(gè)一下瘦身太厲害基本減完了。
雖然在后續(xù)可開發(fā)計(jì)劃中會(huì)陸續(xù)的補(bǔ)充,但是和ss2相比波動(dòng)太大,而沒有在ss2基礎(chǔ)上過度過來,好像是另起爐灶的感覺。
現(xiàn)在再想想ss的定位,
SpringSide是以Spring Framework
為核心,提供Pragmatic的企業(yè)應(yīng)用開發(fā)開源Kickstart。
定位愈加清晰,不再企圖做一個(gè)RoR/Gails式的框架,只做主流選型組合的編程模式總結(jié)。
SpringSide2.0的末期有點(diǎn)繁雜與失控,何寶榮說:不如我們從頭來過
這里是Pragmatic(實(shí)用的),難道和ss2相比就ss3會(huì)更使用,技術(shù)更新這是肯定的,新技術(shù)當(dāng)然可以吸引一部分眼球,但一旦使用了ss后更希望是項(xiàng)目上的指導(dǎo)。而如果只是些miniweb在項(xiàng)目上遇到的問題是很難依靠這個(gè)來解決的,感覺這會(huì)傷了許多ss fans的心。
定位愈加清晰,不再企圖做一個(gè)RoR/Gails式的框架,只做主流選型組合的編程模式總結(jié)。這一點(diǎn)我認(rèn)同
SpringSide2.0的末期有點(diǎn)繁雜與失控,何寶榮說:不如我們從頭來過 ss2確實(shí)比較復(fù)雜,但是里面也不乏經(jīng)典的東西,很多地方都可以為實(shí)際項(xiàng)目所借鑒。重頭來過這個(gè)會(huì)傷了我們,如果安版本持續(xù)下去哪怕版本慢一些,這樣不好嗎,重頭來過,你是要多ss用戶負(fù)責(zé)的。(貌似現(xiàn)在svn中2.0的源碼已經(jīng)沒了)
這里說一些題外話:
在現(xiàn)在的互聯(lián)網(wǎng)發(fā)展速度非常快,在互聯(lián)網(wǎng)公司基本使用的都是動(dòng)態(tài)語言,他們更敏捷,java在web的敏捷方面是如何優(yōu)化也不能和他們相比的。而什么公司會(huì)用ss這類的東西來搭建企業(yè)應(yīng)用呢,一般都一些集團(tuán)公司的信息系統(tǒng)或門戶,而不是互聯(lián)網(wǎng)公司,如果互聯(lián)網(wǎng)公司用java做主營業(yè)務(wù),那大部分都沒有飯吃(當(dāng)然不排除一些特例),而這些集團(tuán)公司更需要的是穩(wěn)定,不過是功能和性能上的穩(wěn)定,更重要的是技術(shù)上的穩(wěn)定,因?yàn)樗麄兇虿糠质且粤鞒毯蜆I(yè)務(wù)為核心,如果使用動(dòng)態(tài)語言去創(chuàng)新獲得良好的用戶體驗(yàn),但技術(shù)變化過快,在人員流動(dòng)的情況下企業(yè)的業(yè)務(wù)很容易收到影響。而作為一個(gè)信息規(guī)劃人員,一般都會(huì)考慮使用一種相對(duì)穩(wěn)定的技術(shù),因?yàn)橄到y(tǒng)延續(xù)性,和信息的集成和流動(dòng)才是最重要的,作為一個(gè)業(yè)務(wù)支撐部門。有句話說的好,我們需要?jiǎng)?chuàng)新,但應(yīng)該是持續(xù)創(chuàng)新,而不是破壞性創(chuàng)新。因此在這些用戶群體才是最需要ss的,而不是要把ss搞和動(dòng)態(tài)語言一樣輕量。如果ss在這方面當(dāng)然是項(xiàng)目更深入更細(xì)節(jié)的問題上給于指導(dǎo),那是最好不過了,bookstore的demo就是一個(gè)不錯(cuò)的列子(當(dāng)然還是有一些問題,比如在acegi的acl上還要進(jìn)一步細(xì)化,等等)。而不是像現(xiàn)在的miniweb把我們領(lǐng)到ss里,然后撒手不管了。
說了這么多,沒別的意思,希望springside更好。剛才出社會(huì)沒多久,可能有些地方視野還沒達(dá)到,這里只是說說我的想法。有不對(duì)的地方多多包含。
最早是從2.0版本開始的,現(xiàn)在已經(jīng)到了3.1.2了。
ss給我的感覺是從新鮮到興奮到失望。這兒發(fā)點(diǎn)牢騷。
主要體現(xiàn)在下面幾點(diǎn);
1.springside項(xiàng)目的延續(xù)性不好
ss2到ss3.1.2隨著版本號(hào)的增加功能確越來越小。做的一些demo演示越來越不實(shí)用。
很懷念書店的demo,這個(gè)例子可以所是讓ss經(jīng)過了一個(gè)實(shí)踐的檢驗(yàn),里面的技術(shù)細(xì)節(jié)考慮的要比現(xiàn)在的miniservice,miniexample要周全的多。
我喜歡ss一方面是因?yàn)樗男迈r的架構(gòu)組合和新技術(shù)指導(dǎo)性,另一方很大程度上是因?yàn)檫@個(gè)demo,他讓我看到了新架構(gòu)帶來的生產(chǎn)力,實(shí)在的東西。
而現(xiàn)在你在從springside官方網(wǎng)站下載SpringSide 2.0 RC1 all in one,下來運(yùn)行一下看看,沒有半天到一天的時(shí)間更不不可能跑起來。這個(gè)里面使用maven來管理jar包,使用ant來調(diào)用,遺憾的是springside原先建立的私有l(wèi)ib Repository已經(jīng)消失了,在這個(gè)項(xiàng)目中依賴的包非常多,有些是可以在公共的Repository找到的,這部分到好辦直接加入公共的Repository地址就可以了,而有以部分是經(jīng)過springside封裝或重新打包的這些包何處去尋,那只好把這一部分屏蔽掉了,保證項(xiàng)目的運(yùn)行。原來引入這個(gè)maven工具是為了很方面明晰的找到依賴的包,這下倒好反而成了絆腳石。要理清楚里面的關(guān)系,還是要一點(diǎn)時(shí)間的。這個(gè)就是項(xiàng)目不延續(xù)造成的。
那有人就奇怪了,說你為什么不用最新的版本,而這也是我的苦衷,現(xiàn)在的最新版本倒是很輕量,把這些東西全砍掉了,只留下了一些miniexample,很難有進(jìn)一步的更細(xì)節(jié)一點(diǎn)的指導(dǎo),而且這些東西沒有經(jīng)過一些實(shí)際項(xiàng)目的檢驗(yàn),可能還是會(huì)在細(xì)節(jié)上有所欠缺。就像一開始ss被封裝成像ruby一樣類似自動(dòng)crud功能,而這個(gè)想法固然很cool但在實(shí)際應(yīng)用中還是一個(gè)花架子,有很多不周全的地方,如果對(duì)基類不是很了解的情況下很難使用,反而沒有自己寫的明晰快速。
2.定位不明晰
ss2到ss3.12像是走了兩個(gè)極端,一個(gè)功能非常多(包括 jms,mail,jbossrules,lucene,compass,acegi,cxf,jbpm,activemq),一個(gè)一下瘦身太厲害基本減完了。
雖然在后續(xù)可開發(fā)計(jì)劃中會(huì)陸續(xù)的補(bǔ)充,但是和ss2相比波動(dòng)太大,而沒有在ss2基礎(chǔ)上過度過來,好像是另起爐灶的感覺。
現(xiàn)在再想想ss的定位,
SpringSide是以Spring Framework

定位愈加清晰,不再企圖做一個(gè)RoR/Gails式的框架,只做主流選型組合的編程模式總結(jié)。
SpringSide2.0的末期有點(diǎn)繁雜與失控,何寶榮說:不如我們從頭來過
這里是Pragmatic(實(shí)用的),難道和ss2相比就ss3會(huì)更使用,技術(shù)更新這是肯定的,新技術(shù)當(dāng)然可以吸引一部分眼球,但一旦使用了ss后更希望是項(xiàng)目上的指導(dǎo)。而如果只是些miniweb在項(xiàng)目上遇到的問題是很難依靠這個(gè)來解決的,感覺這會(huì)傷了許多ss fans的心。
定位愈加清晰,不再企圖做一個(gè)RoR/Gails式的框架,只做主流選型組合的編程模式總結(jié)。這一點(diǎn)我認(rèn)同
SpringSide2.0的末期有點(diǎn)繁雜與失控,何寶榮說:不如我們從頭來過 ss2確實(shí)比較復(fù)雜,但是里面也不乏經(jīng)典的東西,很多地方都可以為實(shí)際項(xiàng)目所借鑒。重頭來過這個(gè)會(huì)傷了我們,如果安版本持續(xù)下去哪怕版本慢一些,這樣不好嗎,重頭來過,你是要多ss用戶負(fù)責(zé)的。(貌似現(xiàn)在svn中2.0的源碼已經(jīng)沒了)
這里說一些題外話:
在現(xiàn)在的互聯(lián)網(wǎng)發(fā)展速度非常快,在互聯(lián)網(wǎng)公司基本使用的都是動(dòng)態(tài)語言,他們更敏捷,java在web的敏捷方面是如何優(yōu)化也不能和他們相比的。而什么公司會(huì)用ss這類的東西來搭建企業(yè)應(yīng)用呢,一般都一些集團(tuán)公司的信息系統(tǒng)或門戶,而不是互聯(lián)網(wǎng)公司,如果互聯(lián)網(wǎng)公司用java做主營業(yè)務(wù),那大部分都沒有飯吃(當(dāng)然不排除一些特例),而這些集團(tuán)公司更需要的是穩(wěn)定,不過是功能和性能上的穩(wěn)定,更重要的是技術(shù)上的穩(wěn)定,因?yàn)樗麄兇虿糠质且粤鞒毯蜆I(yè)務(wù)為核心,如果使用動(dòng)態(tài)語言去創(chuàng)新獲得良好的用戶體驗(yàn),但技術(shù)變化過快,在人員流動(dòng)的情況下企業(yè)的業(yè)務(wù)很容易收到影響。而作為一個(gè)信息規(guī)劃人員,一般都會(huì)考慮使用一種相對(duì)穩(wěn)定的技術(shù),因?yàn)橄到y(tǒng)延續(xù)性,和信息的集成和流動(dòng)才是最重要的,作為一個(gè)業(yè)務(wù)支撐部門。有句話說的好,我們需要?jiǎng)?chuàng)新,但應(yīng)該是持續(xù)創(chuàng)新,而不是破壞性創(chuàng)新。因此在這些用戶群體才是最需要ss的,而不是要把ss搞和動(dòng)態(tài)語言一樣輕量。如果ss在這方面當(dāng)然是項(xiàng)目更深入更細(xì)節(jié)的問題上給于指導(dǎo),那是最好不過了,bookstore的demo就是一個(gè)不錯(cuò)的列子(當(dāng)然還是有一些問題,比如在acegi的acl上還要進(jìn)一步細(xì)化,等等)。而不是像現(xiàn)在的miniweb把我們領(lǐng)到ss里,然后撒手不管了。
說了這么多,沒別的意思,希望springside更好。剛才出社會(huì)沒多久,可能有些地方視野還沒達(dá)到,這里只是說說我的想法。有不對(duì)的地方多多包含。