作為一個(gè)曾經(jīng)的Java程序員,已經(jīng)很多年都沒(méi)有編碼,但從沒(méi)有放棄過(guò)對(duì)Java和開(kāi)源的關(guān)心。
最近又有機(jī)會(huì)開(kāi)始寫(xiě)點(diǎn)東西,感覺(jué)自己已經(jīng)很遲鈍了,很難有耐心動(dòng)手寫(xiě)代碼了。
但是為了盡量縮短自己與現(xiàn)在技術(shù)水平的差距也開(kāi)始學(xué)點(diǎn)“新”東西,比如Struts、Hibernate和Spring。
大多都是停留在摸摸的水平,離實(shí)際開(kāi)發(fā)還有很大的距離。
可能是人老了,變懶了。
一直都在尋找著,更能夠精簡(jiǎn)代碼的產(chǎn)品,尤其是使用Hibernate配置了繁瑣OR影射后,
完成一個(gè)簡(jiǎn)單數(shù)據(jù)庫(kù)操作后,真不知道是用它好還是不用它好。
相比之下,一個(gè)同事,只在大學(xué)上過(guò)公共課程C語(yǔ)言程序設(shè)計(jì),用不到一周的時(shí)間上手Delphi,
并且在不到一個(gè)月時(shí)間里(中間還因?yàn)槠渌ぷ鞒霾睿袛噙^(guò)),相對(duì)輕松的開(kāi)發(fā)了一套的程序。
同時(shí)對(duì)比正在激烈討論的Ruby,微軟的.net都看到了很多Java里面沒(méi)有的東西。
原來(lái)編程可以這么簡(jiǎn)單,也應(yīng)該這么簡(jiǎn)單。
Java有沒(méi)有更簡(jiǎn)單的方式來(lái)保存數(shù)據(jù),更確切的說(shuō)是保存對(duì)象,DB4O無(wú)疑就是這其中的一種。
基于它現(xiàn)在的技術(shù),有幾個(gè)想法
1、數(shù)據(jù)型對(duì)象的共享技術(shù),更多的應(yīng)該是跨語(yǔ)言的實(shí)現(xiàn),畢竟現(xiàn)在大多數(shù)語(yǔ)言都是面向?qū)ο蟮摹?br>數(shù)據(jù)庫(kù)和XML文件在很多時(shí)候,在這些不同語(yǔ)言之間充當(dāng)了一個(gè)數(shù)據(jù)傳遞者的角色。
一般數(shù)據(jù)又都是封裝在某個(gè)對(duì)象里面,與數(shù)據(jù)庫(kù)之間OR影射。微軟的SOAP和CLI似乎都是向這個(gè)主旨努力。
2、EJB太復(fù)雜,雖然買(mǎi)了很多書(shū),但都從來(lái)沒(méi)有耐性做個(gè)測(cè)試的樣例。遠(yuǎn)程訪問(wèn)一個(gè)對(duì)象,必須繼承特定類(lèi),
要基于某個(gè)協(xié)議,還要配置容器,太困難了。DB4O似乎又提供了另一種思考方式。
3、Session大家用的應(yīng)該很多,使用的不當(dāng)對(duì)服務(wù)器是一種非常大的負(fù)擔(dān)。還想不到如何減輕服務(wù)器的負(fù)擔(dān),
但至少可以嘗試使用DB4O來(lái)減輕Session也就是容器的負(fù)擔(dān)。
4、對(duì)于3中Session,困難的就是對(duì)眾多的臨時(shí)數(shù)據(jù),管理起來(lái)太復(fù)雜。用過(guò)之后就不再使用。
容器自己可以管理Session,清理DB4O中的垃圾數(shù)據(jù)最簡(jiǎn)單的方式,就是為DB4O添加一種內(nèi)存數(shù)據(jù)庫(kù)模式。
也就是數(shù)據(jù)都放在內(nèi)存里面,管理程序可以清理垃圾數(shù)據(jù),一次重啟、斷電、系統(tǒng)崩潰,
都可以把這些垃圾數(shù)據(jù)清理掉。
可能還有更多的一些可能,誰(shuí)又能知道,現(xiàn)在的技術(shù)發(fā)展太快了!