OWIN的英文全稱是Open Web Interface for .NET。html
若是僅從名稱上解析,能夠得出這樣的信息:OWIN是針對.NET平臺的開放Web接口。web
那Web接口是誰和誰之間的接口呢?是Web應用程序與Web服務器之間的接口,OWIN就是.NET Web應用程序與Web服務器之間的接口。api
爲何須要這樣一個接口呢?由於.NET Web應用程序是運行於Web服務器之中的,.NET Web應用程序須要經過Web服務器接收用戶的請求,而且經過Web服務器將響應內容發送用戶。若是沒有這樣一個接口,.NET Web應用程序就要依賴於所運行的具體Web服務器,好比ASP.NET應用程序要依賴於IIS。有了這個接口,ASP.NET應用程序只需依賴這個抽象接口,不用關心所運行的Web服務器。服務器
因此,OWIN的做用就是經過引入一組抽象接口,解耦了.NET Web應用程序與Web服務器,再次體現了接口的重要性。在軟件開發中,每次解耦都是一次很大的進步。app
【進一步的理解】this
OWIN是對ASP.NET Runtime的抽象。spa
ASP.NET 5.0是OWIN的一種實現htm
經過下面幾張圖能夠更直觀地理解:blog
【參考資料】接口
How to explain Katana and OWIN in simple words and uses?