侵入式和非侵入式的區別

2021-06-02 02:17:25 字數 455 閱讀 5191

簡單說一下我的理解吧。假設大家都想要把使用者**塞到乙個框架裡。侵入式的做法就是要求使用者**「知道」框架的**,表現為使用者**需要繼承框架提供的類。非侵入式則不需要使用者**引入框架**的資訊,從類的編寫者角度來看,察覺不到框架的存在。

例如:

使用struts的時候,我需要繼承一些struts的類,這時struts侵入到了我的**裡。

使用spring,編寫一些業務類的時候不需要繼承spring特定的類,通過配置完成依賴注入後就可以使用,此時,spring就沒有侵入到我業務類的**裡。

侵入式讓使用者**產生對框架的依賴,這些**不能在框架外使用,不利於**的復用。但侵入式可以使使用者跟框架更好的結合,更容易更充分的利用框架提供的功能。

非侵入式的**則沒有過多的依賴,可以很方便的遷移到其他地方。但是與使用者**互動的方式可能就比較複雜。

這兩種方式都有各自的優缺點吧,主要看實際開發時怎麼權衡了。

侵入式框架和非侵入式框架的區別

開發程式的同時,引進的框架。如果在使用該框架時,要繼承框架提供的實體類或實現框架提供的介面,這就說明該框架是侵入式框架,因為程式本身對框架有了依賴,當去除框架時,程式也就無法執行,這個 也就是我們說的重量級框架,如struts1中,action和actionform必須要繼承action和actio...

Spring 中侵入式與非侵入式的區別

假設大家都想要把使用者 塞到乙個框架裡。侵入式的做法就是要求使用者 知道 框架的 表現為使用者 需要繼承框架提供的類。非侵入式則不需要使用者 引入框架 的資訊,從類的編寫者角度來看,察覺不到框架的存在。例如 1 使用struts的時候,我需要繼承一些struts的類,這時struts侵入到了我的 裡...

對Spring非侵入式的理解

假設大家都想要把使用者 塞到乙個框架裡。侵入式的做法就是要求使用者 知道 框架的 表現為使用者 需要繼承框架提供的類。非侵入式則不需要使用者 引入框架 的資訊,從類的編寫者角度來看,察覺不到框架的存在。例如 1 使用struts的時候,我需要繼承一些struts的類,這時struts侵入到了我的 裡...