Vad är ett programvarupaket?
Ett mjukvarupaket är en grupp program som samlas för att tjäna ett gemensamt syfte. Ofta kommer ett programvarupaket också att innehålla källkoden som byggde de körbara programmen samt en mängd dokumentation för själva programmen. Vissa programvarupaket kommer också att innehålla exempelfiler som ytterligare kan illustrera hur de andra komponenterna i paketet fungerar.
Komponenterna i ett programvarupaket kan göra betydande olika saker, men alla komponenter i paketet samlas i en enhetlig helhet. Vissa programvarupaket har ett huvudprogram som kapslar in alla mindre program, medan andra tar ett mer fragmenterat tillvägagångssätt och har flera små, specialiserade körbara program för olika ändamål. Det finns fördelar och nackdelar med varje tillvägagångssätt, såväl som specifika målgrupper som drar nytta av varje.
Paket som innehåller alla funktioner i ett stort program är användbara för de flesta datoranvändare. De är vanligtvis enkla att installera, relativt enkla att förstå och ganska enkla att köra. Ibland kan en användare ladda ner tillägg för dem, men allt görs bakom kulisserna med minimal interaktion och ansträngning från den användaren. Allt-i-ett-programvarupaket som dessa är tillgängliga för många ändamål, från dokumenthantering till 3D-modellering och bildåtergivning.
Ett mjukvarupaket som håller sin funktionalitet mer fragmenterad riktar sig ofta till mer datorkyndiga användare. Dessa paket har ofta kommandoradsverktyg, tillsammans med omfattande dokumentation och mycket flexibla funktioner. Ändringar av dessa paket måste vanligtvis göras genom att antingen manipulera råa katalogstrukturer eller helt ladda ner en ny version av paketet. Tillägg är inte lika vanliga för dessa pakettyper. Grupperade programvarupaket riktar sig ofta mot akademiker och ingenjörer för syften som analys av biologisk data och skapande av nya program.
Vissa programvarupaket innehåller helt unik kod, medan andra innehåller befintliga program för att kombinera funktionalitet i befintliga algoritmer. Debatten mellan dessa två metoder fortsätter. Vissa programmerare föredrar att skriva sin egen kod för allt, och andra föredrar att koppla ihop flera befintliga program. Det finns många paket som använder varje typ av ramverk, och endera metodiken kan användas för att skapa en framgångsrik programvarusvit.
Med utvidgningen av öppen källkodsprogramvara har fler och fler program, algoritmer och programvarupaket blivit fritt att använda i ny programvara utan licensproblem. Inom vetenskapliga områden publiceras till exempel många nya algoritmer och program med förväntan att de kommer att användas fritt, inte bara för analys, utan också för att bygga nya program. Ett nytt programvarupaket kan enkelt byggas på eller modelleras efter ett gammalt paket, och denna kunskapsdelning har blivit en viktig del av mjukvaruutvecklingen.