99插插插,亚洲伦理中文在线,站长推荐一二三区欧美,青青草在线导航

×

淺談PHP如何實現(xiàn)依賴注入(二)

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-05-10 18:02:33

現(xiàn)在我們就當(dāng)已經(jīng)實現(xiàn)了redisDB和cache這兩個組件,具體的細(xì)節(jié)這里就先不做討論了,來看看如何使用使用吧。首先需要將兩個組件注入到容器中:

 現(xiàn)在我們就當(dāng)已經(jīng)實現(xiàn)了redisDB和cache這兩個組件,具體的細(xì)節(jié)這里就先不做討論了,來看看如何使用使用吧。首先需要將兩個組件注入到容器中:

002UASMrzy7605pjKJv15&690.jpg

<div
到這里你可能會覺得這樣以來反而有點繁瑣了。cache和redisDB的結(jié)構(gòu)如此之像,完全可以把redis寫到cache中而沒必要單獨分離出來?但是你想過沒有,有些數(shù)據(jù)及時性沒那么高而且數(shù)量比較大,用redis有點不合適,mongodb是更好的選擇;有些數(shù)據(jù)更新頻率更慢,對查詢速度也沒要求,直接寫入文件保存到硬盤可能更為合適;再或者,你的客戶覺得redis運維難度有點大,讓你給他換成memcache... 這就是為什么把它分離出來了。然后,繼續(xù)改進代碼:
 
我們新增加了一個接口BackendInterface,規(guī)定了redisDB,mongoDB,file這三個類必須實現(xiàn)這個接口所要求的功能,至于其他錦上添花的功能,隨你怎么發(fā)揮。而cache的代碼,好像沒有變,因為cache不需要關(guān)心數(shù)據(jù)是怎么存入數(shù)據(jù)庫或者文件中。而cache的調(diào)用者,也不需要關(guān)心cache具體是怎么實現(xiàn)的,只要根據(jù)接口實現(xiàn)相應(yīng)的方法就行了。多人協(xié)作你會更加受益,你們只需要商定好接口,然后分別實現(xiàn)就行了。
 
以上代碼還可以繼續(xù)改進,直到你認(rèn)為無可挑剔為止。比如,redis服務(wù)在一個請求中可能會調(diào)用多次,而每次調(diào)用都會重新創(chuàng)建,這將有損性能。只需擴展一下DI容器就好增加一個參數(shù)或增加一個方法,隨你。
 
這樣以來,如果某個服務(wù)在一次請求中要調(diào)用多次,你就可以將shared屬性設(shè)置為true,以減少不必要的浪費。如果你覺得每次在注入時都要setDi有點繁瑣,想讓他自動setDi,那可以這么做:
 
然后,就可以這樣:
 
我們現(xiàn)在所實現(xiàn)的這個DI容器還很簡陋,還不支持復(fù)雜的注入,你可以繼續(xù)完善它。不過,通過這些代碼你已經(jīng)了解什么是依賴在注入了,你可以將這種思想應(yīng)用到你的項目中,或者著手開發(fā)你自己的框架。
 
以上就是小編關(guān)于依賴注入知識的分享,后續(xù)我們會為大家更多知識干貨!
 

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費咨詢獲取折扣

Loading
在线精品中文伊人| 超碰亚洲无码| 张开腿 舔弄 操 在线观看| 日本一区二区熟女| 精品久久婷婷综合| 亚洲中文字幕第十页| 亚洲精品欧美一区二区| 欧美日韩色就是色| 精品人妻内射| www.日韩一区二区三区乱码七糟| 又黄又爽性视频| 精区一品二品日韩欧美| 日本久久肏屄| 欧洲亚洲美女一区二区三区四区五区| 亚州成人黄色片| 欧美精品一区二区三区四| 天天操91免费的黄片| 国产欧美综合图片| 台州市| 又长又粗又大又黄视频| 99人人妻人人澡人人狠| 久久黄'色片| 好叼妞视频精品一区| 久久国产精选性爱| 欧美日韩美女久久| sezonghe婷婷| 欧美一区二区三区一起| 精品久久久久88久久久| 国产人妻ThePorn| 久久久久在线免费亚洲大奶| 亚洲一区日| 亚洲字幕一区二区| 刺激的乱亲小说43部分阅读| 激情射在线| 久久国产亚洲AV高清色欲| 91在线精品秘密不卡视频| 中文字幕精品乱吗亚洲一区99 | 欧美中文日韩亚洲| 天天天日天天操| 农村毛片| 开心五月中文字幕亚洲|