Licença de software
- Em inglês: software license
Uma licença de software é um acordo legal que define os termos sob os quais um software ou código de programação pode ser usado, modificado e distribuído. É uma forma de os desenvolvedores protegerem sua propriedade intelectual e especificarem como outras pessoas podem usar seu trabalho.
Ao contrário do que muita gente pensa, um programa de computador não é "livre" por padrão. Na maioria dos países do mundo, o código de programação é protegido pela lei de direitos autorais, que dá a quem criou o software o direito exclusivo de controlar como ele é usado. Se você encontra um código sem licença, isso não significa que pode fazer o que quiser com ele. Significa que você não pode fazer nada com ele, porque o criador não te deu permissão.
Quando você escreve um código, os direitos autorais dele automaticamente são seus. Isso significa que você tem o direito de decidir quem pode usá-lo e em que condições. Se quiser compartilhar seu código com outras pessoas, você precisa especificar os termos sob os quais elas podem usá-lo. É aí que entram as licenças de software.
Quando você conseguir um emprego de programação, provavelmente vão te pedir para assinar um contrato que especifica quem é dono do código que você escreve. Na maioria dos casos, esse código será considerado propriedade do seu empregador, não sua. Isso porque a empresa te paga para escrever código para ela e quer garantir que esse código seja dela. Por isso é importante ler seu contrato de trabalho com atenção e entender quais direitos você tem sobre o código que escreve.
Normalmente, o arquivo de licença se chama LICENSE ou LICENSE.txt e fica na raiz do repositório. Existem várias licenças padrão disponíveis, então você não precisa escrever a sua própria. A licença mais popular é a MIT License, que é bem permissiva e permite que outras pessoas façam quase qualquer coisa com o seu código. Quando você cria um repositório no GitHub, ele pergunta qual licença você quer usar e cria o arquivo de licença para você.
Tipos de licenças de software
Existem muitos tipos diferentes de licenças de software, cada um com seus próprios termos e condições. Algumas licenças são bem permissivas e permitem fazer quase qualquer coisa com o código, enquanto outras são bem restritivas e limitam o que você pode fazer com ele. Estes são alguns dos tipos mais comuns de licenças de software:
Licença proprietária: Uma licença proprietária é uma licença de código fechado que restringe como o software pode ser usado, modificado e distribuído. O código-fonte não fica disponível ao público, e o software normalmente é vendido por um valor.
- São aqueles enormes contratos de licença de usuário final (EULA, End User License Agreement) que você precisa aceitar quando instala um software no computador.
- Exemplos de software com licenças proprietárias: Microsoft Windows, Adobe Photoshop, Oracle Database.
Licença de código aberto: Uma licença de código aberto (open source) é um tipo de licença que permite que qualquer pessoa use, modifique e distribua o código-fonte livremente. O código-fonte fica disponível ao público, e qualquer pessoa pode contribuir com o desenvolvimento do software.
-
Licença permissiva: Uma licença permissiva é um tipo de licença de código aberto que permite usar, modificar e distribuir o software com pouquíssimas restrições. Licenças permissivas são bem flexíveis e permitem fazer quase qualquer coisa com o código.
- Exemplos de licenças permissivas: MIT License, BSD License e Apache License.
- Exemplos de software com licenças permissivas: Python, Node.js, React.
-
Licença copyleft: Uma licença copyleft é um tipo de licença de código aberto que exige que qualquer versão modificada do software seja publicada sob a mesma licença. Isso garante que o software continue sendo de código aberto e que qualquer melhoria feita nele seja compartilhada com a comunidade. Exemplos de licenças copyleft incluem a GNU General Public License (GPL) e a Lesser GNU Public License (LGPL).
- Exemplos de licenças copyleft: GNU GPL, GNU LGPL.
- Exemplos de software com licenças copyleft: Git, Linux, WordPress, Blender.
Licença Creative Commons: A licença Creative Commons é um conjunto modular e flexível de licenças que permitem aos criadores especificar como a obra deles pode ser usada, modificada e distribuída. As licenças Creative Commons são muito usadas em obras criativas como músicas, imagens e vídeos, mas não trazem termos específicos sobre a distribuição de código-fonte.
- Exemplos de licenças Creative Commons: CC BY, CC BY-SA, CC BY-NC.
- Exemplos de obras que usam licenças Creative Commons: livros, quadrinhos, jogos etc.
Você pode encontrar o texto completo da maioria das licenças de software na internet. Se você usa uma biblioteca ou um framework no seu projeto, é uma boa ideia ler a licença para garantir que está cumprindo os termos dela. Se está escrevendo seu próprio código, você pode escolher a licença que melhor atende às suas necessidades e especificar os termos sob os quais outras pessoas podem usar seu trabalho.
.gitignoregit checkoutgit configgit taggit worktree