開(kāi)發(fā)中纫版,程序員在某個(gè)類(lèi)中需要依賴(lài)其它類(lèi)的方法,則通常是new一個(gè)依賴(lài)類(lèi)再調(diào)用類(lèi)實(shí)例的方法客情,這種開(kāi)發(fā)存在的問(wèn)題是new的類(lèi)實(shí)例不好統(tǒng)一管理捎琐,特別當(dāng)需要new的對(duì)象比較多,new時(shí)初始化復(fù)雜多變時(shí)裹匙,java里面spring提出了依賴(lài)注入的思想瑞凑,即依賴(lài)類(lèi)(需要調(diào)用對(duì)象new的類(lèi))不由程序員實(shí)例化,而是通過(guò)spring容器幫我們new指定實(shí)例并且將實(shí)例注入到需要該對(duì)象的類(lèi)中概页。依賴(lài)注入的另一種說(shuō)法是“控制反轉(zhuǎn)”籽御,通俗的理解是:平常我們new一個(gè)實(shí)例,這個(gè)實(shí)例的控制權(quán)是我們程序員,而控制反轉(zhuǎn)是指new實(shí)例工作不由我們程序員來(lái)做而是交給spring容器來(lái)做技掏,這樣就有效的分離了對(duì)象和它所需要的外部資源铃将,使得它們松散耦合,有利于功能復(fù)用
這點(diǎn)和工廠方法的功能都是相同的
yii里面的依賴(lài)注入的使用:http://www.yiichina.com/tutorial/112