A nyílt forráskódú szoftver (OSS) minden olyan számítógépes szoftver, amelyet a forráskóddal együtt terjesztenek, amely módosítható. Ez azt jelenti, hogy általában tartalmaz egy licencet a programozók számára, hogy tetszőleges módon módosítsák a szoftvert: javíthatják a hibákat, javíthatják a funkciókat, vagy saját igényeikhez igazíthatják a szoftvert.
Nyílt forráskódú szoftver kritériumai
Az Open Source Initiative (OSI), egy 1998-ban alapított globális nonprofit szervezet, az OSS vezető hatóságaként működik. A nyílt forráskódú szoftver definíciója tíz kritériumot tartalmaz, amelyek az alábbiakhoz kapcsolódnak:
- Szoftver újraelosztás
- A forráskód elérhetősége és integritása
- A licencek forgalmazása és tulajdonságai
- Származtatott munkák
- Diszkriminációellenesség
Licencek
A különböző licencek lehetővé teszik a programozók számára a szoftver módosítását különféle feltételek mellett. A Black Duck KnowledgeBase, egy mintegy kétmillió nyílt forráskódú projektet tartalmazó adatbázis szerint az öt legnépszerűbb licenc a következő:
- MIT licenc
- GNU General Public License (GPL) 2.0
- Apache licenc 2.0
- GNU General Public License (GPL) 3.0
- BSD License 2.0 (3 záradékos, új vagy felülvizsgált)
Amikor módosítja a forráskódot, az OSS megköveteli a módosított és a metódusok szerepeltetését. Előfordulhat, hogy a kódmódosítások után létrehozott szoftver ingyenesen elérhető, vagy nem.
Kereskedelmi szoftverek
A kereskedelmi forgalomban kapható szoftverek, más néven kereskedelmi vagy védett szoftverek nem adnak hozzáférést a forráskódjukhoz, mert a szoftver valaki más szellemi tulajdonát képezi. Ennek eredményeként a felhasználók gyakran fizetnek érte. Az OSS ezzel szemben egy közös erőfeszítés; A szoftver szellemi tulajdonát képezi mindazoknak, akik segítettek fejlesztésében vagy módosításában.
Ingyenes szoftver
Bár a kifejezéseket gyakran felcserélhetően használják, az OSS kissé eltér a szabad szoftverektől. Mindkettő a szoftver korlátozás és díjmentes letöltésének és módosításának lehetőségével foglalkozik. Azonban a szabad szoftvert – ezt a koncepciót az MIT számítástechnikai kutatója, Richard Stallman dolgozta ki az 1980-as években – négy feltétel határozza meg, amint azt a nonprofit Free Software Foundation felvázolta. Ez a „négy szabadság” hangsúlyozza, hogy a felhasználók saját belátásuk szerint használhatják és élvezhetik a szoftvereket.
Ezzel szemben az OSS-kritériumok, amelyeket a nyílt forráskódú kezdeményezés egy évtizeddel később dolgozott ki, többet jelentenek hangsúlyt a szoftver módosítására, valamint a forráskód megváltoztatásának következményeire, a licencelésre, ill terjesztés.
A kettő átfedi egymást; egyesek szerint az OSS és a szabad szoftverek közötti különbségek inkább filozófiai, mint gyakorlati jellegűek. Azonban egyiket sem szabad összetéveszteni az ingyenes szoftverekkel. Az ingyenes szoftverek általában olyan védett szoftverekre utalnak, amelyeket a felhasználók ingyenesen letölthetnek, de amelyek forráskódja nem módosítható.
Előnyök
Noha a költségek hiánya kulcsfontosságú előny, az OSS számos további előnnyel rendelkezik:
- Minősége könnyen és nagymértékben javítható, ha a forráskódot továbbítják, tesztelik és javítják.
- Értéket kínál tanulási lehetőség programozóknak. A ma elérhető legnépszerűbb programokon alkalmazhatják tudásukat.
- Biztonságosabb lehet, mint a szabadalmaztatott szoftver, mivel a hibákat gyorsan azonosítják és kijavítják.
- Mivel közkincs, és folyamatosan frissítik, kicsi az esélye annak, hogy elérhetetlenné váljon vagy gyorsan elavuljon – ez fontos előny a hosszú távú projekteknél.
Népszerű típusok
A nyílt forráskódú technológiák segítették az internet nagy részét. Ezenkívül a nap mint nap használt programok közül sok nyílt forráskódú technológiákon alapul. Pontos esetek: az Android OS és az Apple OS X a kernelen, illetve a Unix/BSD nyílt forráskódú technológián alapul.
További népszerű nyílt forráskódú szoftverek:
- A Mozilla Firefox böngészője
- Thunderbird e-mail kliens
- PHP szkriptnyelv
- Piton programozási nyelv
- Apache HTTP webszerver
Fejlesztők
Az OSS projektek olyan együttműködési lehetőségek, amelyek javítják a készségeket és kapcsolatokat építenek ki a területen. A következő területeken dolgozhatnak a fejlesztők:
Kommunikációs eszközök
Az e-mailek, a valós idejű üzenetküldés, a fórumok és a wikik segítik a fejlesztőket abban, hogy megoldásokat találjanak, vagy ötleteket adjanak egymásnak.
Elosztott revízióvezérlő rendszerek
Amikor több különböző földrajzi helyen lévő fejlesztő módosítja az adatokat és fájlokat, ezek a rendszerek kezelik a különböző verziókat és frissítéseket.
Hibakövetők és feladatlisták
Ezek a funkciók lehetővé teszik a nagy projektek számára, hogy nyomon kövessék a problémákat és nyomon követhessék a javításaikat.
Tesztelő és hibakereső eszközök
Ezek a funkciók automatizálják a tesztelést a rendszerintegráció során, és hibakeresést végeznek más programokban.
Alsó vonal
A nyílt forráskódú szoftver a védett szoftver alternatívája. Az OSS projektben való részvétel utat jelenthet a szoftverfejlesztési karrier felépítéséhez, lehetővé téve a programozóknak, hogy a világ legnagyobb szoftverein dolgozva fejlesszék készségeiket. A Facebook, a Google és a LinkedIn mindegyike kiadja az OSS-t, így a fejlesztők megoszthatják egymással tudásukat, újíthatnak megoldásokat, és hozzájárulhatnak a stabil, működőképes termékekhez.