<prompt> Eleza dhana ya sindano ya utegemezi.  <response>: Sindano ya utegemezi ni muundo wa muundo unaoruhusu kutenganisha utegemezi kati ya vijenzi vya programu kwa kuondoa vitu vyenye misimbo ngumu ndani ya msimbo na badala yake kuvitambulisha kutoka nje, kwa ujumla wakati wa utekelezaji. Kwa maneno mengine, badala ya kuwa na vitu vinavyounda utegemezi wao, utegemezi hupitishwa, au hudungwa, kwa vitu kama vigezo vya nje, kawaida kupitia mjenzi au njia ya seti. Hii hufanya usanifu wa programu iwe rahisi kubadilika, kudumishwa, na rahisi kujaribu. Faida kuu ya sindano ya utegemezi ni kwamba inapunguza kiwango cha kuunganishwa kati ya vipengee tofauti, na kuifanya iwe rahisi kufanya mabadiliko, kujaribu au kubadilishana sehemu moja moja bila kuathiri utendakazi wa jumla wa programu. Mbinu hii hutumiwa kwa kawaida katika mifumo mingi ya programu, haswa kwa ukuzaji wa programu za kiwango cha biashara, na inachukuliwa kuwa kanuni ya msingi ya ubadilishaji wa udhibiti au kanuni ya IoC. 