Mis on tarkvarapakett?

Tarkvarapakett on programmide rühm, mis on koondatud ühise eesmärgi täitmiseks. Sageli sisaldab tarkvarapakett ka lähtekoodi, mis koostas käivitatavad programmid, ja mitmesuguseid dokumente programmide endi jaoks. Mõned tarkvarapaketid sisaldavad ka näidisfaile, mis võivad täiendavalt illustreerida, kuidas paketi muud komponendid töötavad.

Tarkvarapaketi komponendid võivad teha oluliselt erinevaid asju, kuid kõik paketi komponendid saavad kokku ühtseks tervikuks. Mõnel tarkvarapaketil on üks põhiprogramm, mis kapseldab kõik väiksemad programmid, samas kui teised kasutavad killustatumat lähenemisviisi ja neil on mitu väikest spetsiaalset käivitatavat faili erinevatel eesmärkidel. Igal lähenemisviisil on eelised ja puudused, samuti konkreetsed sihtrühmad, kes saavad neist kasu.

Paketid, mis koondavad kogu oma funktsionaalsuse ühte suurde programmi, on kasulikud enamikule arvutikasutajatele. Tavaliselt on neid lihtne paigaldada, suhteliselt lihtne mõista ja üsna lihtne käivitada. Mõnikord saab kasutaja neile lisandmooduleid alla laadida, kuid see kõik toimub kulisside taga, kasutaja minimaalse suhtluse ja pingutusega. Sellised kõik-ühes tarkvarapaketid on saadaval paljudel eesmärkidel, alates dokumendihaldusest kuni 3D-modelleerimise ja kujutiste renderdamiseni.

Tarkvarapakett, mis hoiab oma funktsionaalsust killustatuna, on sageli suunatud arvutiteadlikumatele kasutajatele. Nendel pakettidel on sageli käsurea tööriistad, ulatuslik dokumentatsioon ja väga paindlikud võimalused. Nende pakettide muutmine tuleb tavaliselt teha kas töötlemata kataloogistruktuuride manipuleerimise või paketi uue versiooni täieliku allalaadimise teel. Lisandmoodulid pole nende paketitüüpide puhul nii tavalised. Sellised rühmitatud tarkvarapaketid on sageli suunatud akadeemikutele ja inseneridele, näiteks bioloogiliste andmete analüüsimiseks ja uute tarkvaraprogrammide loomiseks.

Mõned tarkvarapaketid sisaldavad täiesti ainulaadset koodi, samas kui teised sisaldavad olemasolevaid programme, et kombineerida olemasolevate algoritmide funktsioone. Arutelu nende kahe metoodika vahel jätkub. Mõned programmeerijad eelistavad kirjutada kõige jaoks oma koodi ja teised eelistavad siduda mitu olemasolevat programmi. Igat tüüpi raamistikku kasutavad paljud paketid ja eduka tarkvarakomplekti loomiseks saab kasutada mõlemat metoodikat.

Avatud lähtekoodiga tarkvara liikumise laienemisega on üha rohkem programme, algoritme ja tarkvarapakette muutunud tasuta kasutamiseks uues tarkvaras ilma litsentsimisprobleemideta. Näiteks teadusvaldkondades avaldatakse palju uusi algoritme ja programme ootusega, et neid hakataks vabalt kasutama mitte ainult analüüsiks, vaid ka uute programmide ehitamiseks. Uut tarkvarapaketti saab hõlpsasti ehitada või modelleerida vanale ja see teadmiste jagamine on muutunud tarkvaraarenduses oluliseks.