Esses incluem:
- Redistribuição de Software
- Disponibilidade do código fonte
- Distribuição de licenças
- Propriedades da licença
- Antidiscriminação
Licenças
Licenças diferentes permitem que os programadores modifiquem o software com várias condições anexadas. O OSI aprova licenças que cumprem com sua definição de software de código aberto. 5 das licenças mais populares, de acordo com a Black Duck Knowledgebase, são:
- Licença MIT
- Licença Pública Geral GNU (GPL) 2.0
- Licença Apache 2.0
- GNU General Public License (GPL) 3.0
- Licença BSD 2.0 (3-cláusula, nova ou revisada)
Quando você altera o código-fonte, um requisito do OSS é a inclusão do que você alterou, assim como seus métodos. O software criado após modificações no código pode ou não ser disponibilizado gratuitamente.
A diferença entre software de código aberto e comercial
Software comercialmente disponível, ou software proprietário, não dá acesso ao seu código-fonte porque o software é propriedade intelectual de outra pessoa.
Como resultado, os usuários geralmente pagam por isso.
O OSS, por outro lado, é um esforço colaborativo - o software é propriedade intelectual compartilhada entre todos os que ajudaram a desenvolvê-lo ou alterá-lo.
Software Livre VS. Software grátis
Contrariamente à crença popular, nem se concentra no custo, ou falta dela, dos programas.
O código aberto implica a disponibilidade gratuita do código-fonte e da distribuição. O software livre, da mesma maneira, inclui modificação de código, mas enfatiza as liberdades que os usuários desfrutam para fazer o que quiserem com o software. A Free Software Foundation descreve 4 condições para que o software seja considerado totalmente gratuito.
Além disso, o software pode ser classificado como freeware. Isso significa que os usuários baixam o software sem nenhum custo, mas não podem fazer alterações em seu código-fonte.
Vantagens do software de código aberto
Embora o custo seja um fator determinante, o OSS tem vários benefícios adicionais:
- Resultados de alta qualidade quando o código-fonte é passado, testado e corrigido.
- É uma valiosa oportunidade de aprendizado para programadores . Eles podem aprender e aplicar habilidades aos programas mais populares disponíveis hoje.
- Muitos consideram o software de código aberto mais seguro que o software proprietário porque os bugs são identificados e corrigidos rapidamente.
- Como o software de código aberto é de domínio público, há poucas chances de ele se tornar indisponível. Isso é importante para projetos de longo prazo que dependem dessas ferramentas pela duração do projeto.
- A maior parte do software é gratuita. Custos podem surgir mais tarde, no entanto, como assinaturas ou taxas de suporte.
Tipos populares de software de código aberto
As tecnologias de código aberto ajudaram a estabelecer grande parte da internet. Além disso, muitos dos programas que você e eu usamos todos os dias são baseados em tecnologias de código aberto. Por exemplo, o Android OS e o OS X da Apple são baseados no kernel e nas tecnologias de código aberto Unix / BSD, respectivamente.
Outro software popular de código aberto é:
- Navegador Firefox da Mozilla
- Cliente de e-mail Thunderbird
- Linguagem de script PHP
- Linguagem de programação Python
- Servidor web Apache HTTP
- sistema de banco de dados
Código Aberto e Desenvolvedores
Os projetos de OSS são oportunidades de colaboração que aprimoram habilidades e criam conexões no campo. Os desenvolvedores devem ser proficientes com ferramentas padrão de desenvolvimento de código aberto.
- Ferramentas de comunicação - E-mail, mensagens em tempo real, fóruns e wikis ajudam os desenvolvedores a encontrar soluções ou trocar ideias uns com os outros.
- Sistemas de controle de revisão distribuídos - Quando vários desenvolvedores em diferentes localizações geográficas modificam dados e arquivos, esses sistemas gerenciam as diferentes versões e atualizações.
- Rastreadores de bugs e listas de tarefas - Permitem que projetos de grande escala monitorem problemas e mantenham o controle de suas correções.
- Ferramentas de teste e depuração - Automatize os testes durante a integração do sistema e depure outros programas.
Conclusão
Milhares de projetos de código aberto são alternativas ao software proprietário. Trabalhe em um projeto de OSS como um caminho para construir uma carreira em desenvolvimento de software. Além disso, os programadores podem aprimorar suas habilidades trabalhando nos maiores programas de software do mundo. Facebook, Google e LinkedIn lançam software como Open Source, para que os desenvolvedores possam compartilhar conhecimento, inovar soluções e contribuir para produtos estáveis e funcionais.