熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java開源技術 >> 正文

Java編程中Spring的一些負面因素

2013-11-23 20:19:25  來源: Java開源技術 

  最近一直在忙於學習業務系統和學習c++對技術框架已經疏於了解恰好一同事在我項目裡使用了spring並帶了些問題所以決定看看Spring技術針對我同事帶來的這些問題與大家討論

  主要是些負面的體會

  

  一Spring的xml配置很不好xml濫用程度已經泛濫成災了要知道程序員最習慣最歡迎的還是看代碼當要看一個業務邏輯時發現竟然先要去看它的父類然後看爺爺類然後再看太爺爺類最後發現還需要找Spring配置去找另外一個類而這個類ref了另外一個類時肯定哐當暈倒無論是初學語言還是對技術深入了解的高手或者還是因為項目緊急從別的地方抽掉過來的其他成員簡單的代碼和配置都是合適的(像我這樣用了好幾年的java的人已經有點不愛看xml配置)

  二Spring的配置方式不支持開發模式每次修改Spring配置總是需要重啟動一些大項目啟動是非常耗時的相反一些別的小的第三方配置開發包可以支持開發模式另外我覺得Sping也不太可能支持開發模式這在下面一點會說到

  三直覺上Spring管的太多對於很多框架或者第三方lib來說往往專著於完成系統的某一方面如Hibernate專著於O/R MappingEJB專著於分布事務規則引擎專著於解釋規則執行運算等Spring做的太多使其有啥都做不好的嫌疑當然這還不是最主要的負面因素而是他干擾了業務系統他對對象進行管理有可能會讓某些用戶用Spring管理業務對象這有可能帶來負面結果的如一些情況Struts的MVC被Spring接管業務邏輯又被Spring接管一個新手很難看懂代碼了解代碼的時候總會遇到黑洞又如上面所說的開發模式因為業務對象的互相依賴重新啟動業務對象是很復雜的一件事情Spring也不可能做到這一點除非你的業務對象屈服於Spring的架構這又和使用Spring初衷違背了再如業務對象的復雜性核心性決定了Spring難以管理好它也沒有必要多此一舉

  四適配器成災Spring為了管理好第三方包只好做些適配器以方便管理當然有些第三方包很簡單不需要做比如我看到剛有的一篇文章是在Spring中使用定時器但是某些復雜的第三方包或者框架就有問題了得寫適配器如接管某web mvc框架又如剛才所說的定時器lib本生功能齊備的定時器lib就有自己的配置你要去Spring去管理它只能寫個適配器在適配器中使用定時器lib提供的配置文件


From:http://tw.wingwit.com/Article/program/Java/ky/201311/28306.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.