Mis on sõltuvuse süstimine?

Sõltuvussüst on objektorienteeritud programmeerimises (OOP) kasutatav tehnika. See meetod viitab teisele programmile või loob sellega ühenduse ja muudab algse programmi viidatud programmist sõltuvaks. See võimaldab programmeerijatel lisada algsele programmile koheselt funktsioone või lisafunktsioone, kuid muudab ka kodeerimise keerulisemaks ja lisab liigset kodeerimist, mis võib programmi aeglustada. Enamik OOP-programme võimaldab programmeerijatel viidata mitmesugustele installitud programmidele, ilma et oleks vaja koodi lisada.

Sõltuvussüsti kasutamine on enamikus programmides sageli säästlik. Programmi sõltuvaks muutmiseks kirjutab programmeerija koodi, mis viitab teisele programmile kas osaliselt või tervikuna. Tavaliselt saab viidata igale installitud programmile, kuid mõned kodeerimisskeemid võimaldavad viidata ainult konkreetsetele programmidele. Näiteks kui programmeerija soovib lisada programmile tekstivõimalusi, saab ta funktsiooni käsitsi tegemise asemel viidata tekstitöötlusprogrammile. Seda tehes on algsel programmil nüüd uus funktsioon, kuid see sõltub sellest, kas see teine ​​​​programm töötab ja on arvutisse installitud.

Enamik uusi programmeerijaid eelistab funktsioonide käsitsi loomise asemel kasutada sõltuvuse süstimist. Selle põhjuseks on asjaolu, et funktsioonide loomine võib olla keeruline ja uued programmeerijad ei pruugi teada, kuidas seda funktsiooni tõhusalt luua. Programmile viidates ei pea programmeerija teadma kodeeringut ning iga funktsiooni saab lisada vaid mõne koodireaga.

Sõltuvussüstiga on palju probleeme, eriti kui programm on mõeldud tarbijatele, mistõttu seda sageli ei kasutata või kasutavad professionaalid ja tarkvara pakkujad vähe. Üks ilmsemaid probleeme sõltuvuse süstiga tarbija poolel on võimalus, et tarbijal ei pruugi olla viidatud programmi. Kui programm on koostatud viitama programmi A funktsioonile, kuid tarbijal pole programmi A installitud, ilmneb funktsioonis või kogu programmis kurnav viga.

Kõrge sõltuvuse korral, kus viidatakse mitmele programmile, ilmnevad muud probleemid. Ühele või kahele programmile viitamine loob väikese koguse koodi, kuid rohkema tegemine võib nõuda liigset koodi, mis aeglustab programmi. Kui programmis on viga, on nüüd palju keerulist kodeerimist, millesse programmeerija peab vea leidmiseks sukelduma, eriti kuna viga võib olla viidatud programmis, mitte originaalprogrammis.

Paljud uued programmeerijad kasutavad sõltuvuse süstimist, nii et enamik OOP-skeeme pakub automaatset viisi programmile viitamiseks. See võimaldab programmeerijal vaid mõne hiireklõpsuga luua võrdlusühenduse. Programmi automaatne viitamine lisab sageli veidi rohkem kodeerimist kui viite käsitsi kirjutamine, kuid kuna programmeerija on uus ja programm suure tõenäosusega tarbijateni ei jõua, ei tohiks see tõsiseid probleeme tekitada.