【寫在前面】嘗試做完一件工作之外自我覺得有意義的一件事,那就從翻譯Autofac的幫助文檔吧。

入門指南

將Autofac集成你的應(yīng)用程序的步驟通常很簡單,一般是:

  • 時刻以IOC(控制反轉(zhuǎn))的思想來規(guī)劃你的應(yīng)用程序

  • 在你的Porject中添加Autofac引用

  • 按照如下步驟設(shè)計應(yīng)用程序的啟動環(huán)節(jié)

    • 創(chuàng)建一個ContainerBuilder

    • 向ContainerBuilder注冊組件

    • 通過ContainerBuilder的Build()方法獲得Container(后續(xù)需用到)

  • 在應(yīng)用程序運行環(huán)節(jié)時,按如下步驟執(zhí)行

    • 通過Container獲得一個lifetime scope

    • 通過lifetime scope解析出組件實例

    • 通過實例繼續(xù)執(zhí)行

本篇將通過入門指南實現(xiàn)一個簡單的Console應(yīng)用程序,一旦有了基礎(chǔ),后續(xù)可以延伸集成WCF、ASP.NET等等。

規(guī)劃應(yīng)用程序

先簡單解釋一下IOC(控制反轉(zhuǎn))。
通常情況下,類A若需要類B的一些功能,則在類A中需要通過“new”操作來完成創(chuàng)建和使用功能,這樣在代碼層面就固定住了類A和類B之間的相互依賴關(guān)系。這樣的“依賴”,在后續(xù)的重構(gòu)或修改時,影響面很大。
而IOC(控制反轉(zhuǎn))的思維,則是取消,由類A來創(chuàng)建類B,變更為在執(zhí)行期間,由IOC容器來根據(jù)需要和約定自動創(chuàng)建類B來給類A使用。

Martin Fowler有一篇著名的文章,解釋何謂IOC,可以點擊“鏈接”查看。

在本篇的示例中,我們將定義一個類,這個類可以輸出一些數(shù)據(jù);但我們不想和Console綁定住,因為我們并不能確定在實際使用過程中Console是否真的可用。

我們通??梢赃@樣實現(xiàn):

 

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式

我想了解如何學(xué)習(xí)

姓名:
手機:
留言: