Šta je softver otvorenog koda i zašto je to važno?

Sadržaj:

Šta je softver otvorenog koda i zašto je to važno?
Šta je softver otvorenog koda i zašto je to važno?
Anonim

Suprotno softveru otvorenog koda je softver zatvorenog koda, koji ima licencu koja ograničava korisnike i zadržava izvorni kod od njih.

Firefox, Chrome, OpenOffice, Linux i Android su neki popularni primjeri softvera otvorenog koda, dok je Microsoft Windows vjerovatno najpopularniji dio softvera zatvorenog koda.

Open Source vs. Free Software

Aplikacije otvorenog koda su općenito besplatno dostupne - iako ništa ne sprječava programere da naplate kopije softvera ako dopuštaju redistribuciju aplikacije i njenog izvornog koda nakon toga.

Međutim, to se ne odnosi na "slobodni softver". “Slobodan” u slobodnom softveru znači “slobodan kao u slobodi”, a ne “slobodan kao u pivu”. Kamp slobodnog softvera, koji predvode Richard Stallman i Free Software Foundation, fokusira se na etiku i moral korištenja softvera koji korisnik može kontrolirati i mijenjati. Drugim riječima, kamp slobodnog softvera fokusira se na korisničke slobode.

Slika
Slika

Pokret softvera otvorenog koda kreiran je da se fokusira na pragmatičnije razloge za odabir ove vrste softvera. Zagovornici otvorenog koda željeli su se fokusirati na praktične prednosti korištenja softvera otvorenog koda koji bi se više dopao preduzećima, a ne etici i moralu.

Konačno, i zagovornici otvorenog koda i zagovornici slobodnog softvera razvijaju istu vrstu softvera, ali se ne slažu oko poruka.

Vrste licenci

Postoji mnogo različitih licenci koje koriste projekti otvorenog koda, u zavisnosti od toga koje programeri preferiraju za svoj program.

GPL, ili GNU Opća javna licenca, naširoko se koristi u mnogim projektima otvorenog koda, kao što je Linux. Pored svih gore navedenih definicija otvorenog koda, uslovi GPL-a navode da, ako bilo ko modifikuje program otvorenog koda i distribuira izvedeno delo, mora takođe distribuirati izvorni kod za svoje izvedeno delo. Drugim riječima, niko ne može uzeti otvoreni izvorni kod i kreirati program zatvorenog koda od njega – oni moraju svoje promjene vratiti zajednici. Microsoft je iz tog razloga nazvao GPL „virusnim“, jer prisiljava programe koji uključuju GPL kod da izdaju svoj izvorni kod. Naravno, programeri programa mogu odlučiti da ne koriste GPL kod ako je to problem.

Slika
Slika

Neke druge licence, kao što je BSD licenca, postavljaju manje ograničenja za programere. Ako je program licenciran pod BSD licencom, svako može inkorporirati izvorni kod programa u drugi program. Ne moraju svoje promjene vraćati zajednici. Neki ljudi vide da je ovo čak i "besplatnije" od GPL licence, jer daje programerima slobodu da ugrade kod u svoje programe zatvorenog koda, dok neki ljudi to vide kao manje "besplatnu" jer oduzima prava od krajnjih korisnika izvedenog programa.

Pogodnosti za korisnike

Ovo nije sve suve, nevažne stvari koje su važne samo programerima. Najočiglednija prednost softvera otvorenog koda je da se može koristiti besplatno. Gornji primjer Ubuntu Linuxa to jasno pokazuje - za razliku od Windowsa, možete instalirati ili distribuirati onoliko kopija Ubuntua koliko želite, bez ograničenja. Ovo mogu biti posebno korisni serveri - ako postavljate server, možete jednostavno instalirati Linux na njega. ako postavljate virtuelizirani klaster servera, lako možete duplicirati jedan Ubuntu server. Ne morate brinuti o licenciranju i o tome koliko instanci Linuxa smijete pokrenuti.

Program otvorenog koda je takođe fleksibilniji. Na primjer, novo sučelje Windowsa 8 razočaralo je mnoge dugogodišnje korisnike Windows desktopa. Budući da je Windows zatvorenog koda, nijedan korisnik Windowsa ne može uzeti Windows 7 interfejs, modificirati ga i učiniti da ispravno radi na Windows 8. (Neki korisnici Windowsa pokušavaju, ali ovo je mukotrpan proces obrnutog inženjeringa i modifikacije binarnih datoteka.)

Slika
Slika

Kada Linux desktop kao što je Ubuntu uvede novi desktop interfejs koji neki korisnici nisu obožavatelji, korisnici imaju više opcija. Na primjer, kada je GNOME 3 izašao, mnogi korisnici desktopa Linuxa bili su jednako isključeni. Neki su preuzeli kod na staru verziju, GNOME 2, i modificirali ga tako da radi na najnovijim Linux distribucijama - ovo je MATE. Neki su preuzeli kod u GNOME 3 i modifikovali ga tako da radi na način koji im se više sviđa - ovo je Cinnamon. Neki korisnici su se upravo prebacili na postojeće alternativne radne površine. Da je Windows bio otvorenog koda, korisnici Windowsa 8 bi imali više izbora i fleksibilnosti. Samo pogledajte CyanogenMod, popularnu distribuciju Androida vođenu zajednicom koja dodaje funkcije i podršku za nove uređaje.

Softver otvorenog koda takođe omogućava programerima da "stanu na ramena divova" i kreiraju sopstveni softver. Svjedočite Android i Chrome OS, koji su operativni sistemi izgrađeni na Linuxu i drugom softveru otvorenog koda. Jezgra Apple-ovog OS X-a - a time i iOS-a - također je izgrađena na otvorenom kodu. Valve bijesno radi na prenošenju svoje Steam platforme za igre na Linux, jer bi im to omogućilo da kreiraju vlastiti hardver i kontroliraju vlastitu sudbinu na način koji nije moguć na Microsoftovom Windows-u.

Ovo nije iscrpan opis - čitave knjige su napisane na ovu temu - ali sada biste trebali imati bolju predstavu o tome šta je softver otvorenog koda zapravo i zašto vam je koristan.

Popularna tema