• 2024-10-31

Definizione ed esempi di software Open-Source

В чем смысл open source?

В чем смысл open source?

Sommario:

Anonim

Il software open source (OSS) è un qualsiasi software per computer distribuito con il suo codice sorgente disponibile per la modifica. Ciò significa che di solito include una licenza per i programmatori per cambiare il software in qualsiasi modo scelga: possono correggere bug, migliorare le funzioni o adattare il software alle proprie esigenze.

Criteri software Open Source

L'Open Source Initiative (OSI), un'organizzazione no-profit globale fondata nel 1998, agisce come autorità leader in materia di OSS. La sua definizione di software open source comprende 10 criteri, relativi a questioni come:

  • Ridistribuzione del software
  • Disponibilità e integrità del codice sorgente
  • Distribuzione e proprietà delle licenze
  • Opere derivate
  • Anti-discriminazione

licenze

Diverse licenze consentono ai programmatori di modificare il software con varie condizioni allegate. Secondo il Black Duck KnowledgeBase, un database di circa due milioni di progetti open source, cinque delle licenze più popolari sono:

  1. Licenza MIT
  2. GNU General Public License (GPL) 2.0
  3. Licenza Apache 2.0
  4. GNU General Public License (GPL) 3.0
  5. Licenza BSD 2.0 (clausola 3, nuova o rivista)

Quando modifichi il codice sorgente, OSS richiede l'inclusione di ciò che hai modificato e dei tuoi metodi. Il software creato dopo le modifiche al codice può o non può essere reso disponibile gratuitamente.

Software open source e software commerciale

Il software disponibile in commercio, noto come software commerciale o proprietario, non consente l'accesso al suo codice sorgente perché il software è proprietà intellettuale di qualcun altro. Di conseguenza, gli utenti spesso pagano per questo. L'OSS, d'altra parte, è uno sforzo collaborativo; Il software è proprietà intellettuale condivisa tra tutti coloro che hanno contribuito a svilupparlo o alterarlo.

Software open source e software libero

Sebbene i termini siano spesso usati in modo intercambiabile, l'OSS è leggermente diverso dal software libero. Entrambi si occupano della possibilità di scaricare e modificare software senza restrizioni o addebiti. Tuttavia, il software libero - un concetto sviluppato negli anni '80 da un ricercatore di computer science del MIT, Richard Stallman - è definito da quattro condizioni, come delineato dalla Free Software Foundation senza fini di lucro. Queste "quattro libertà" sottolineano la capacità degli utenti di utilizzare e utilizzare il software come meglio credono.

Al contrario, i criteri OSS, che l'Open Source Initiative ha sviluppato un decennio dopo, pongono maggiormente l'accento sulla modifica del software e sulle conseguenze di alterare il codice sorgente, le licenze e la distribuzione.

Ovviamente, i due si sovrappongono; alcuni direbbero che le differenze tra l'OSS e il software libero sono più filosofiche che pratiche. Tuttavia, nessuno dei due deve essere confuso con il freeware. Freeware di solito si riferisce a software proprietario che gli utenti possono scaricare gratuitamente, ma il cui codice sorgente non può essere modificato.

Vantaggi del software Open-Source

Mentre la sua mancanza di costi è un vantaggio chiave, OSS ha diversi vantaggi aggiuntivi:

  • La sua qualità può essere facilmente e notevolmente migliorata quando il suo codice sorgente viene passato in rassegna, testato e risolto.
  • Offre una preziosa opportunità di apprendimento per i programmatori. Possono applicare le abilità ai programmi più popolari disponibili oggi.
  • Può essere più sicuro del software proprietario perché i bug vengono identificati e riparati rapidamente.
  • Poiché è di dominio pubblico e costantemente soggetto ad aggiornamenti, ci sono poche possibilità che possa diventare non disponibile o rapidamente obsoleto, un vantaggio importante per i progetti a lungo termine.

Tipi popolari di software Open-Source

Le tecnologie open source hanno aiutato a stabilire gran parte di Internet. Inoltre, molti dei programmi in uso ogni giorno si basano su tecnologie open source. Casi in questione: il sistema operativo Android e il sistema operativo OS X di Apple si basano rispettivamente sulle tecnologie open source kernel e Unix / BSD.

Altro popolare software open source è:

  • Mozilla Firefox browser web
  • Client di posta elettronica Thunderbird
  • Linguaggio di scripting PHP
  • Linguaggio di programmazione Python
  • Web server Apache

Software e sviluppatori Open-Source

I progetti OSS sono opportunità di collaborazione che migliorano le competenze e creano connessioni sul campo. Le aree su cui gli sviluppatori possono lavorare includono:

  • Strumenti di comunicazione Email, messaggistica in tempo reale, forum e wiki aiutano gli sviluppatori a trovare soluzioni o a rimbalzare le idee l'una dell'altra.
  • Sistemi di controllo di revisione distribuiti. Quando più sviluppatori in diverse posizioni geografiche modificano dati e file, questi sistemi gestiscono le diverse versioni e gli aggiornamenti.
  • Inseguitori di bug ed elenchi di compiti. Queste funzionalità consentono a progetti su larga scala di monitorare i problemi e tenere traccia delle loro correzioni.
  • Test e strumenti di debug. Queste funzionalità automatizzano i test durante l'integrazione del sistema e eseguono il debug di altri programmi.

La linea di fondo

Il software open source è un'alternativa al software proprietario. Partecipare a un progetto OSS può essere un percorso per costruire una carriera nello sviluppo del software, consentendo ai programmatori di affinare le proprie capacità lavorando sui più grandi programmi software del mondo. Facebook, Google e LinkedIn rilasciano tutti OSS, quindi gli sviluppatori possono condividere conoscenze, innovare soluzioni e contribuire a prodotti stabili e funzionali.


Articoli interessanti

Dovresti scegliere un lavoro con benefici o essere un contraente?

Dovresti scegliere un lavoro con benefici o essere un contraente?

Durante una ricerca di lavoro, puoi lavorare come un appaltatore indipendente o un dipendente. È importante visualizzare i pro e i contro di ciascuno in relazione ai benefici.

Suggerimenti sull'industria musicale sui contratti di etichette indipendenti

Suggerimenti sull'industria musicale sui contratti di etichette indipendenti

Eve se stai firmando con una piccola etichetta indipendente, è importante avere un contratto che copra la tua registrazione e promozione per proteggere i tuoi diritti.

I pro e contro delle offerte di etichette discografiche indipendenti

I pro e contro delle offerte di etichette discografiche indipendenti

Ecco uno sguardo ai pro e contro della firma con un'etichetta discografica indipendente e cose che dovresti prendere in considerazione prima di firmare con un indie.

Codici NEC: area della comunità di Augmentee individuale

Codici NEC: area della comunità di Augmentee individuale

Il sistema di potenziamento individuale della NEC (Navy Enlisted Classification) è visto come un modo per implementare talenti o competenze necessarie.

Piano di sviluppo individuale: il punto di vista dei dipendenti

Piano di sviluppo individuale: il punto di vista dei dipendenti

Un piano di sviluppo individuale (IDP) è uno strumento che aiuta a facilitare lo sviluppo dei dipendenti. Scopri come prepararne uno e discuterne con il tuo manager.

Esempi di piani di sviluppo individuali

Esempi di piani di sviluppo individuali

Un piano di sviluppo individuale (IDP) è uno strumento che aiuta a facilitare lo sviluppo dei dipendenti. Scopri i vantaggi degli IDP qui.