1. 程式人生 > >【轉】【常識】框架-框架的侵入性-解釋

【轉】【常識】框架-框架的侵入性-解釋

https://blog.csdn.net/silly1195056983/article/details/52153995

什麼叫做一個框架的侵入性?可能很多人很難像別人解釋清楚.

我想了個例子,很好的說明了什麼叫侵入性.

初級解釋:
A是侵入性的,B程式碼中使用A,那麼如果以後不用A了(用另外一個工具代替),必須修改B的程式碼。
反之,如果A是非侵入性的,B不用A,用C了,程式碼不需要改,改改配置檔案什麼的,就可以了。

進階解釋:
Spring和hibernate都是通過宣告式配置檔案,
就可以實現我們所要的功能,很少用他們的API
進行編碼,估計這是叫低侵入性吧,
EJB則相反。

最終解釋
-------------------------------------------------------------------------------
上面兩個是網上找的,這個是我自己打比方解釋的,你們感受一下

入侵性, 國家A 要為國家B提供某種服務, 比如國防保護吧, 他提供了武器裝備和一些武器使用的軍事人員, 國家A和國家B 界限清白,單純的武器交易關係,這就叫做低侵入性,如果A國家直接在B國家建立軍事基地, 還要B國家出錢啊,整天軍演招搖過市, 影響百姓生活,影響一個國家的正常行為,這就叫做高入侵性.
放到程式裡,一個框架的低入侵性, 就是說,想不使用這個框架的時候, 需要改的程式碼很少,因為這個框架可以通過配置xml ,properties檔案等等 而單獨發揮作用, 如果一個框架的高入侵性, 就是說, 如果突然不想使用這個框架, 那麼需要改的程式碼特別多,因為 這個框架影響了整個程式碼編寫, 到處都要使用它提供的方法, 其他程式碼對這個框架的方法 依賴性特別高.