1. 程式人生 > >框架-框架的侵入性-解釋

框架-框架的侵入性-解釋

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

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

初級解釋: A是侵入性的,B程式碼中使用A,那麼如果以後不用A了(用另外一個工具代替),必須修改B的程式碼。
反之,如果A是非侵入性的,B不用A,用C了,程式碼不需要改,改改配置檔案什麼的,就可以了。 進階解釋:
Spring和hibernate都是通過宣告式配置檔案,
就可以實現我們所要的功能,很少用他們的API
進行編碼,估計這是叫低侵入性吧,
EJB則相反。 最終解釋
-------------------------------------------------------------------------------
上面兩個是網上找的,這個是我自己打比方解釋的,你們感受一下 入侵性, 國家A 要為國家B提供某種服務, 比如國防保護吧, 他提供了武器裝備和一些武器使用的軍事人員, 國家A和國家B 界限清白,單純的武器交易關係,這就叫做低侵入性,如果A國家直接在B國家建立軍事基地, 還要B國家出錢啊,整天軍演招搖過市, 影響百姓生活,影響一個國家的正常行為,這就叫做高入侵性. 放到程式裡,一個框架的低入侵性, 就是說,想不使用這個框架的時候, 需要改的程式碼很少,因為這個框架可以通過配置xml ,properties檔案等等 而單獨發揮作用, 如果一個框架的高入侵性, 就是說, 如果突然不想使用這個框架, 那麼需要改的程式碼特別多,因為 這個框架影響了整個程式碼編寫, 到處都要使用它提供的方法, 其他程式碼對這個框架的方法 依賴性特別高.

相關推薦

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

https://blog.csdn.net/silly1195056983/article/details/52153995 什麼叫做一個框架的侵入性?可能很多人很難像別人解釋清楚. 我想了個例子,很好的說明了什麼叫侵入性. 初級解釋: A是侵入性的,B程式碼中使用A,那麼如果以後不用A

框架-框架侵入-解釋

什麼叫做一個框架的侵入性?可能很多人很難像別人解釋清楚. 我想了個例子,很好的說明了什麼叫侵入性. 初級解釋: A是侵入性的,B程式碼中使用A,那麼如果以後不用A了(用另外一個工具代替),必須修

基於Java Netty框架構建高能的Jt808協議的GPS服務器(轉)

邏輯 利用 影響 成熟 機制 和數 rap 架構 spdy 原文地址:http://www.jt808.com/?p=971 使用Java語言開發一個高質量和高性能的jt808 協議的GPS通信服務器,並不是一件簡單容易的事情,開發出來一段程序和能夠承受數十萬臺車載接入是兩

scrapy框架的命令列解釋

scrapy框架的命令解釋   建立爬蟲專案 scrapy startproject 專案名例子如下: scrapy startproject test1 這個時候爬蟲的目錄結構就已經建立完成了,目錄結構如下:

【乾貨】個人工作文件節選:XAML MVVM 框架易用細節優化Tips

1    易用性細節優化 1.1 程式碼片段 在ViewModel內,會有大量重複性的在Property set中激發 INotifyPropertyChanged.PropertyChanged 事件的程式碼。 這種屬性用已有的程式碼片段已經很難高效的輸入。使用合適的程式碼片段在VM設計時 不會因為過於

django框架如何提升能?(高並發)摘自網絡

常用 響應時間 前端性能優化 服務 提升 過期 優化 應用服務器性能優化 web   對於一個後端開發程序員來說,提升性能指標主要有兩個,一個是並發數,一個是響應時間網站性能的優化。一般包括web前端性能優化,應用服務器性能優化,存儲服務器優化。   對前端的優化有:

一種低侵入的元件化方案 之 傳統元件化方案的問題

github開源地址 github.com/beyondxia/m… 傳統元件化方案介紹     元件化的核心問題為元件間的解耦,而解耦就不可避免的要面臨解決元件間的通訊問題,即通訊機制。按照通訊機制的維度來區分,可以大致概括為如下兩種方案:協議通訊、介面通訊。二者的基本實現原理如下。 1、協議通訊

排名前10的vue前端UI框架框架

餓了麼前端推出的基於 Vue.js 2.0 的後臺元件庫,它能夠幫助你更輕鬆更快速地開發 web 專案       官網地址 element.eleme.io/ iview(start-15674) iview一套基於 Vue

如何自己實現一個scrapy框架——框架雛形(一)

#一、瞭解框架 ##1、首先明確一下,什麼是框架: 框架是為了為解決一類問題而開發的程式,框架兩個字可以分開理解,框:表示指定解決問題的邊界,明確要解決的問題;架:表達的是能夠提供一定的支撐性和可擴充套件性;從而實現解決這類問題達到快速開發的目的。 ##2、實現

(轉)動手實現一個輕量級無侵入的RxJava自動登出庫RxLifecycle

*本篇文章已授權微信公眾號 guolin_blog (郭霖)獨家釋出 一. 概述 RxLifecycle是一個輕量級,侵入性低的RxJava登出管理庫.他不會改變原有專案Activity的繼承結構,輕鬆實現RxJava在Android平臺下的自動登出,甚至你在自定義view的時候使用RxJava都能

機器學習中L1L2規則化詳解(先驗及稀疏解釋

(作者:陳玓玏) 1、 為什麼要正則化? 知乎上有個兄弟說得對(https://www.zhihu.com/question/20924039 這個問題下Stark Einstein的回答),不應該說是正則化,應該說是規則化,也就是說,我們原來是在完全沒有任何先

Decorators 低侵入探索

當大家都再聊要不要學習框架的時候,筆者卻還在學規範,當標題黨。本文的一切,源於網路,感恩開源的世界... 雖然本文的初衷是講 ES7 中的裝飾器,但筆者更喜歡在探索的過程中加深對前端基礎知識的理解。本著一顆刨根問底兒的心,分享內容會盡可能多地將一些關聯知識串聯起來講解。 乍一看可能會有點亂,但卻

什麼是框架,框架的作用是什麼?

什麼是框架:     為了能夠充分的利用已有程式碼,合理規劃結構,提升效率等等原因,將程式碼按照一定規則組合起來的一套系統. 框架的作用: 程式碼重用:定義包、類、函式的放置和載入規則 請求的分發管理: 配置檔案管理:載入和動態載入配置資料 錯誤和異常管理:異常捕捉、錯誤

排名前10的vue前端UI框架框架值得你掌握

之前得到訊息vue在GitHub已經超過react,成為第一大框架,讓我們來看看以vue為基礎的開發框架有哪些?Element(start-28128)餓了麼前端推出的基於 Vue.js 2.0 的後臺元件庫,它能夠幫助你更輕鬆更快速地開發 web 專案iview(start

學習Hibernate框架--框架搭建及簡單實用

在學習Hibernate框架之前首先來了解一下什麼是Hibernate框架以及為什麼要使用它 Hibernate是 一個開源的物件關係對映框架 對JDBC進行了非常輕量級的物件封裝 將JacaBean物件和資料庫的表建立對應關係 它是一個優秀的Java持久化層解決方案 是

Spring-Boot 日+SLF4j使用+SLF4j原理+統一日誌記錄+SpringBoot日誌關係+引入其他框架+框架切換+日誌使用

1SLF4j使用(和以前使用log4j一樣) import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class HelloWorld { public static void main(Strin

架構設計的非侵入原則

最近常常看到JAVA社群熱鬧異常,各類框架齊齊上陣,各路神仙盡顯神通。.NET社群也不甘寂寞,高手都冒出來了,於是移植自JAVA的框架,自己獨創的框架,大而全的框架.....且不說技術上的優劣,也不比誰的效率,其實我們在專案中選擇一個框架的時候很多時候都是在考慮這個框架的適

volatile機制詳述(可見、原子解釋

在Java中long賦值不是原子操作,因為先寫32位,再寫後32位,分兩步操作,而AtomicLong賦值是原子操作,為什麼?為什麼volatile能替代簡單的鎖,卻不能保證原子性?這裡面涉及volatile,是java中的一個我覺得這個詞在Java規範中從未被解釋清楚的神奇關鍵詞,在Sun的JDK官方

原始碼剖析@ApiImplicitParam對@RequestParam的required屬性的侵入

### 問題起源 使用SpringCloud構建專案時,使用Swagger生成相應的介面文件是推薦的選項,Swagger能夠提供頁面訪問,直接在網頁上除錯後端系統的介面, 非常方便。最近卻遇到了一個有點困惑的問題,演示介面示例如下(原有功能介面帶有業務實現邏輯,這裡簡化了介面): ```java /**

Android 最火框架XUtils之註解機制具體解釋

lean uci 修飾 row 多個 mes 數組 1.2 sans 在上一篇文章Android 最火的高速開發框架XUtils中簡介了xUtils的基本用法,這篇文章說一下xUtils裏面的註解原理。 先來看一下xUtils裏面demo的代碼