• 2025-04-03

Definicja i przykłady oprogramowania Open Source

Guided Tour for Red Hat OpenShift on IBM Cloud

Guided Tour for Red Hat OpenShift on IBM Cloud

Spisu treści:

Anonim

Oprogramowanie Open Source (OSS) to dowolny rodzaj oprogramowania komputerowego dystrybuowanego wraz z kodem źródłowym dostępnym do modyfikacji. Oznacza to, że zazwyczaj zawiera licencję dla programistów na zmianę oprogramowania w dowolny sposób: mogą naprawiać błędy, ulepszać funkcje lub dostosowywać oprogramowanie do własnych potrzeb.

Kryteria oprogramowania Open-Source

Open Source Initiative (OSI), globalna organizacja non-profit założona w 1998 r., Działa jako wiodący autorytet w dziedzinie OSS. Jego definicja oprogramowania open source zawiera 10 kryteriów odnoszących się do takich kwestii, jak:

  • Redystrybucja oprogramowania
  • Dostępność i integralność kodu źródłowego
  • Dystrybucja i właściwości licencji
  • Prace pochodne
  • Antydyskryminacja

Licencje

Różne licencje umożliwiają programistom modyfikowanie oprogramowania w różnych warunkach. Według bazy wiedzy Black Duck KnowledgeBase, bazy danych około dwóch milionów projektów open source, pięć najpopularniejszych licencji to:

  1. Licencja MIT
  2. GNU General Public License (GPL) 2.0
  3. Licencja Apache 2.0
  4. GNU General Public License (GPL) 3.0
  5. Licencja BSD 2.0 (3-klauzula, nowa lub poprawiona)

Kiedy zmieniasz kod źródłowy, OSS wymaga włączenia tego, co zmieniłeś, jak również metod. Oprogramowanie utworzone po modyfikacji kodu może, ale nie musi zostać udostępnione za darmo.

Oprogramowanie Open Source a oprogramowanie komercyjne

Dostępne na rynku oprogramowanie, czyli komercyjne lub zastrzeżone oprogramowanie, nie daje dostępu do jego kodu źródłowego, ponieważ oprogramowanie jest własnością intelektualną innej osoby. W rezultacie użytkownicy często za to płacą. OSS, z drugiej strony, jest wspólnym wysiłkiem; Oprogramowanie jest wspólną własnością intelektualną wśród wszystkich, którzy pomogli go opracować lub zmienić.

Oprogramowanie Open Source a wolne oprogramowanie

Chociaż terminy są często używane zamiennie, OSS różni się nieco od wolnego oprogramowania. Oba dotyczą możliwości pobierania i modyfikowania oprogramowania bez ograniczeń i opłat. Jednak wolne oprogramowanie - koncepcja opracowana w latach 80. XX wieku przez badacza informatyki MIT, Richarda Stallmana - jest definiowana przez cztery warunki, przedstawione przez Fundację Wolnego Oprogramowania non-profit. Te „cztery swobody” podkreślają zdolność użytkowników do używania i korzystania z oprogramowania zgodnie z ich potrzebami.

Natomiast kryteria OSS, które Inicjatywa Open Source rozwinęła dziesięć lat później, kładą większy nacisk na modyfikację oprogramowania i konsekwencje zmiany kodu źródłowego, licencji i dystrybucji.

Oczywiście oba nakładają się na siebie; niektórzy twierdzą, że różnice między OSS a wolnym oprogramowaniem są bardziej filozoficzne niż praktyczne. Jednak nie należy ich mylić z freeware. Darmowe oprogramowanie zwykle odnosi się do oprogramowania zastrzeżonego, które użytkownicy mogą pobrać bezpłatnie, ale którego kodu źródłowego nie można zmienić.

Zalety oprogramowania Open Source

Chociaż brak kosztów jest kluczową zaletą, OSS ma kilka dodatkowych korzyści:

  • Jego jakość można łatwo i znacznie poprawić, gdy kod źródłowy zostanie przekazany, przetestowany i naprawiony.
  • Oferuje cenną możliwość nauki dla programistów. Mogą stosować umiejętności do najpopularniejszych obecnie dostępnych programów.
  • Może być bezpieczniejszy niż oprogramowanie własnościowe, ponieważ błędy są identyfikowane i naprawiane szybko.
  • Ponieważ jest to domena publiczna i stale podlega aktualizacjom, istnieje niewielka szansa, że ​​stanie się ona niedostępna lub szybko przestarzała - ważny plus dla projektów długoterminowych.

Popularne typy oprogramowania Open Source

Technologie open-source pomogły stworzyć dużą część Internetu. Ponadto wiele programów używanych codziennie opiera się na technologiach open source. Przykłady: system operacyjny Android i system operacyjny OS X firmy Apple są oparte odpowiednio na technologii jądra i Unix / BSD.

Inne popularne oprogramowanie open-source to:

  • Przeglądarka Mozilla Firefox
  • Klient poczty e-mail Thunderbird
  • Język skryptowy PHP
  • Język programowania Python
  • Serwer WWW Apache

Oprogramowanie Open Source i deweloperzy

Projekty OSS to możliwości współpracy, które poprawiają umiejętności i budują połączenia w terenie. Obszary, nad którymi mogą pracować deweloperzy, obejmują:

  • Narzędzia komunikacyjne. Wiadomości e-mail, wiadomości w czasie rzeczywistym, fora i strony wiki pomagają programistom znaleźć rozwiązania lub odrzucić pomysły.
  • Rozproszone systemy kontroli wersji. Gdy wielu programistów w różnych lokalizacjach geograficznych modyfikuje dane i pliki, systemy te zarządzają różnymi wersjami i aktualizacjami.
  • Śledzenie błędów i listy zadań. Funkcje te umożliwiają wielkoskalowym projektom monitorowanie problemów i śledzenie ich poprawek.
  • Narzędzia do testowania i debugowania. Funkcje te automatyzują testowanie podczas integracji systemu i debugują inne programy.

Dolna linia

Oprogramowanie typu open source jest alternatywą dla prawnie zastrzeżonego oprogramowania. Udział w projekcie OSS może być ścieżką do budowania kariery w rozwoju oprogramowania, umożliwiając programistom doskonalenie swoich umiejętności poprzez pracę nad największymi programami na świecie. Facebook, Google i LinkedIn udostępniają OSS, więc programiści mogą dzielić się wiedzą, wprowadzać innowacyjne rozwiązania i przyczyniać się do stabilnych, funkcjonalnych produktów.


Interesujące artykuły

10 pytań Pracodawcy nigdy nie powinni pytać w rozmowie kwalifikacyjnej

10 pytań Pracodawcy nigdy nie powinni pytać w rozmowie kwalifikacyjnej

Pracodawcy powinni unikać zadawania pytań dotyczących wywiadu, które są nielegalne lub nieprzydatne do podejmowania decyzji o zatrudnieniu. Zobacz 10 przykładów pytań, których nie należy pytać.

Network Intelligence Analyst

Network Intelligence Analyst

Są to opisy stanowisk w Siłach Powietrznych i czynniki kwalifikacyjne dla roli Network Intelligence Analyst (1N4X1).

Wykorzystanie taserów w egzekwowaniu prawa

Wykorzystanie taserów w egzekwowaniu prawa

Dowiedz się, jak wymyślono TASERS, jak działają, jak się je wykorzystuje i dowiedz się o kontrowersjach związanych z ich użyciem.

Szkolenie Motor Marines T Opis Pracy

Szkolenie Motor Marines T Opis Pracy

Fakty dotyczące pracy w Marine Corps Motor Transport, w tym operatorów pojazdów silnikowych (MOS 3531). Motor T Marines.

Marine Corps Enlisted Job Descriptions: Security Guard

Marine Corps Enlisted Job Descriptions: Security Guard

Program ochrony korpusu piechoty morskiej działa od 1948 r., A jego absolwenci mają za zadanie chronić ambasady amerykańskie na całym świecie.

Praca Marine Corps MOS 1812 Tank Crewmember Job

Praca Marine Corps MOS 1812 Tank Crewmember Job

MOS 1812, który jest członkiem M1A1 Tank Crewmember, to wyspecjalizowana praca w Marines wymagająca treningu w kilku fazach oraz kurs dla członków załogi.