成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

5分鐘理解依賴注入和控制反轉(zhuǎn)

xiaodao / 454人閱讀

摘要:基本的解釋想必打開這篇文章的人,對依賴注入和控制反轉(zhuǎn)都有了大致的概念。實(shí)際上,在去理解依賴注入和控制反轉(zhuǎn)時,我們需要有兩個概念。

基本的解釋

想必打開這篇文章的人,對依賴注入和控制反轉(zhuǎn)都有了大致的概念。簡單的說:控制反轉(zhuǎn)是依賴注入的實(shí)現(xiàn)。

舉一個例子

男人A 要找女朋友,他可以去網(wǎng)聊、去夜店、去酒吧等等各種地方碰運(yùn)氣,花錢花時間。這是一種找女朋友的方法,也是很多人的做法。

男人B 要找女朋友,他年紀(jì)大了沒有那么多時間和精力在這方面花費(fèi)氣力,直接去相親。這是很多大齡青年找女朋友的方法,也就是今天想說的方法。

簡單的說明

假設(shè)以上例子就是找女朋友,找到女朋友就OK。那么哪一個效率更高呢?顯然是男人B。

對于男人B 來說,他的目標(biāo)是找女朋友,他 依賴 相親 注入 女朋友。這里的相親可以理解成為一個服務(wù),比如說婚戀網(wǎng)站,同事朋友的介紹,婚介所等等。

對于男人A 來說,他的所投入的時間和金錢等,可以擁有更高質(zhì)量的女朋友??赡軐@個女朋友了如指掌,能完全摸清楚她的脾氣,以至于能夠控制她。

但對于男人B 來說,想了解和控制這個女朋友就不好說了。因?yàn)橐稽c(diǎn)都不了解,更別說控制了。換句話說:控制 這個女朋友的能力,完全 反轉(zhuǎn) 了。

代碼的解釋

很多人不理解依賴注入和控制反轉(zhuǎn)主要是不熟悉適用場景,其實(shí)在很多框架中我們說用到了 IoC 和 DI,實(shí)際上都是一回事,他實(shí)際上就是我們設(shè)計模式的一種:門面模式,也稱外觀模式。

實(shí)際上,在去理解 依賴注入控制反轉(zhuǎn) 時,我們需要有兩個概念。

我們需要做一件事;

項目中有提供做這件事的方法。

實(shí)際的代碼
class Boy {
    public function getGirlfriend() {
        $site = new LoveSite();
        $site->createGirl();
    }
}

class LoveSite {
    public function createGirl() {}
}

$boy = new Boy;
$boy->getGirlfriend();

以上代碼是個例子,對于 Boy 來說, LoveSite 是他的一個依賴,只有在使用 Boy,并調(diào)用 getGirlfriend 方法的時候,才會被它注入,并創(chuàng)建一個 girl。

而控制反轉(zhuǎn)在這個例子中的體現(xiàn)就是用多帶帶的一個 LoveSite 類去實(shí)現(xiàn) createGirl 的功能,而不是把這個函數(shù)的代碼寫在 Boy 類中。

以上。。。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/77461.html

相關(guān)文章

  • 5分鐘理解依賴注入控制反轉(zhuǎn)

    摘要:基本的解釋想必打開這篇文章的人,對依賴注入和控制反轉(zhuǎn)都有了大致的概念。實(shí)際上,在去理解依賴注入和控制反轉(zhuǎn)時,我們需要有兩個概念。 基本的解釋 想必打開這篇文章的人,對依賴注入和控制反轉(zhuǎn)都有了大致的概念。簡單的說:控制反轉(zhuǎn)是依賴注入的實(shí)現(xiàn)。 舉一個例子 男人A 要找女朋友,他可以去網(wǎng)聊、去夜店、去酒吧等等各種地方碰運(yùn)氣,花錢花時間。這是一種找女朋友的方法,也是很多人的做法。 男人B 要找...

    Jensen 評論0 收藏0
  • Spring IoC學(xué)習(xí)總結(jié)

    摘要:學(xué)習(xí)總結(jié)學(xué)習(xí)整理的一些筆記,很簡單。大部分認(rèn)為和只是不同的叫法而已。依賴注入的兩種方式和注解使用注釋驅(qū)動的功能源碼剖析 Spring IoC學(xué)習(xí)總結(jié) 學(xué)習(xí)spring Ioc整理的一些筆記,很簡單。分享給大家。 IoC 基本概念 在這之前,我們先記住一句話。好萊塢原則:Dont call us, we will call you.其實(shí)這句話很恰當(dāng)?shù)匦稳萘朔崔D(zhuǎn)的意味;Ioc, Inve...

    silencezwm 評論0 收藏0
  • Spring還可以這么學(xué)--IoC(控制反轉(zhuǎn)) / DI(依賴注入)理解

    摘要:對象之間耦合度過高的系統(tǒng),必然會出現(xiàn)牽一發(fā)而動全身的情形。控制被反轉(zhuǎn)之后,獲得依賴對象的過程由自身管理變?yōu)榱擞扇萜髦鲃幼⑷?。于是,他給控制反轉(zhuǎn)取了一個更合適的名字叫做依賴注入。 Spring還可以這么學(xué)--IoC(控制反轉(zhuǎn)) / DI(依賴注入)理解 聲明:文章的前三部分參考博文:https://www.cnblogs.com/Nouno...這篇文章首發(fā)是在我的個人微信訂閱號每天學(xué)編...

    atinosun 評論0 收藏0
  • 深入理解IoC(控制反轉(zhuǎn))、DI(依賴注入

    摘要:引述最近看設(shè)計模式以及代碼,對于控制反轉(zhuǎn)以及依賴注入這些概念非常困惑,于是找了一些資料,以下是對于控制反轉(zhuǎn)的一下理解。其中最常見的方式叫做依賴注入,簡稱,還有一種方式叫依賴查找。在軟件工程中,依賴注入是種實(shí)現(xiàn)控制反轉(zhuǎn)用于解決依賴性設(shè)計模式。 引述 最近看設(shè)計模式以及l(fā)aravel代碼,對于控制反轉(zhuǎn)以及依賴注入這些概念非常困惑,于是找了一些資料,以下是對于控制反轉(zhuǎn)的一下理解。 概念 Io...

    xcc3641 評論0 收藏0
  • 深入剖析 Laravel 服務(wù)容器

    摘要:劃下重點(diǎn),服務(wù)容器是用于管理類的依賴和執(zhí)行依賴注入的工具。類的實(shí)例化及其依賴的注入,完全由服務(wù)容器自動的去完成。 本文首發(fā)于 深入剖析 Laravel 服務(wù)容器,轉(zhuǎn)載請注明出處。喜歡的朋友不要吝嗇你們的贊同,謝謝。 之前在 深度挖掘 Laravel 生命周期 一文中,我們有去探究 Laravel 究竟是如何接收 HTTP 請求,又是如何生成響應(yīng)并最終呈現(xiàn)給用戶的工作原理。 本章將帶領(lǐng)大...

    abson 評論0 收藏0

發(fā)表評論

0條評論

xiaodao

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<