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