Clique e receba as novidades quentinhas no Telegram

Os geeks costumam descrever os programas como sendo de “código aberto” ou “software livre”. Dessa forma, se você está se perguntando o que esses termos significam e por que são importantes, continue lendo está matéria. (Não, “software livre” não significa apenas que você pode baixá-lo gratuitamente.)

Veja também o que é um software!

Se um programa é de código aberto ou não, isso não importa apenas para os desenvolvedores, mas também para os usuários. Portanto, as licenças de software de código aberto oferecem aos usuários liberdades que de outra forma não teriam.

A definição de Código Aberto

Código aberto: veja o que é e para o que serve! - Foto: Reprodução/ CT
Veja o que é e para o que serve! – Foto: Reprodução/ CT

Se um programa for de código aberto, seu código-fonte estará disponível gratuitamente para os seus usuários. Dessa forma, os seus usuários – e qualquer outra pessoa – podem pegar esse código-fonte, modificá-lo e distribuir suas próprias versões do programa. Além disso, os usuários também podem distribuir quantas cópias do programa original desejarem. Portanto, qualquer pessoa pode usar o programa para qualquer propósito; não há taxas de licenciamento ou outras restrições ao software.

Por exemplo, Ubuntu Linux é um SO de código aberto. Você pode baixar o Ubuntu, criar quantas cópias quiser e dar aos seus amigos. Você também pode instalar o Ubuntu em uma quantidade ilimitada de PCs. Além disso, você pode criar remixes do disco de instalação do Ubuntu e distribuí-los. Se você estiver particularmente motivado, pode baixar o código-fonte de um programa no Ubuntu e modificá-lo, criando sua própria versão personalizada desse programa – ou do próprio Ubuntu. Todas as licenças de código aberto permitem que você faça isso, enquanto as licenças de código fechado impõem restrições a você.

Código aberto: veja o que é e para o que serve! - Foto: Reprodução/ How To Geek
Veja o que é e para o que serve! – Foto: Reprodução/ How To Geek

O oposto do software de código aberto é o software de código fechado, que possui uma licença que restringe os usuários e mantém o código-fonte longe deles.

Firefox, Chrome, OpenOffice, Linux e Android são alguns exemplos populares de software de código aberto. Por outro lado, o Microsoft Windows é provavelmente o software de código fechado mais popular que existe.

Código Aberto vs. Software Livre

Código aberto: veja o que é e para o que serve! - Foto: Reprodução/ YouTube
Veja o que é e para o que serve! – Foto: Reprodução/ YouTube

Os apps de código aberto geralmente estão disponíveis gratuitamente – embora não haja nada que impeça o desenvolvedor de cobrar por cópias do software se eles permitirem a redistribuição do app e de seu código-fonte posteriormente.

No entanto, não é a isso que “software livre” se refere. O “livre” em software livre significa “livre como na liberdade”. O campo do software livre, liderado por Richard Stallman e a Free Software Foundation, foca na ética e na moral do uso de software que pode ser controlado e modificado pelo usuário. Em outras palavras, o acampamento do software livre concentra-se na liberdade do seu usuário.

Código aberto: veja o que é e para o que serve! - Foto: Reprodução/ How To Geek
Veja o que é e para o que serve! – Foto: Reprodução/ How To Geek

O movimento do software de código aberto se iniciou para focar em razões mais pragmáticas para a escolha desse tipo de software. Os defensores do código aberto queriam se concentrar nos benefícios práticos do uso de software de código aberto que atrairia mais as empresas, em vez de ética e moral.

Em última análise, os defensores do software livre e de código aberto estão desenvolvendo o mesmo tipo de software, mas discordam quanto à mensagem.

Tipos de licenças

Código aberto: veja o que é e para o que serve! - Foto: Reprodução/ Sempre Update
Veja o que é e para o que serve! – Foto: Reprodução/ Sempre Update

Existem muitas licenças diferentes usadas por projetos de código aberto, dependendo da preferência dos desenvolvedores para seu o programa.

A GPL, ou GNU General Public License, é útil para muitos projetos de código aberto, como o Linux. Além de todas as definições acima de código aberto, os termos da GPL especificam que, se alguém modificar um programa de código aberto e distribuir uma obra derivada, também deve distribuir o código-fonte de sua obra derivada. Em outras palavras, ninguém pode pegar o código-fonte aberto e criar um programa de código-fonte fechado – eles devem liberar suas alterações para a comunidade. A Microsoft se referiu à GPL como sendo “viral” por esse motivo, pois ela força os programas que incorporam o código GPL a liberar seu próprio código-fonte. Obviamente, os desenvolvedores de um programa podem optar por não usar o código GPL se isso for um problema.

Veja o que é e para o que serve! – Foto: Reprodução/ How To Geek

Algumas outras licenças, como a licença BSD, impõem menos restrições aos desenvolvedores. Dessa forma, se um programa for licenciado sob a licença BSD, qualquer pessoa pode incorporar o código-fonte do programa em outro programa. Eles não precisam divulgar suas alterações para a comunidade.  Algumas pessoas veem que isso é ainda mais “gratuito” do que a licença GPL, pois dá aos desenvolvedores a liberdade de incorporar o código em seus próprios programas de código fechado, enquanto algumas pessoas o veem como sendo menos “gratuito” porque retira os direitos dos usuários finais do programa derivado.

Benefícios para os usuários

Veja o que é e para o que serve! – Foto: Reprodução/ Sempre Update

Por incrível que pareça, softwares de código aberto não são importantes apenas para os desenvolvedores. Dessa forma, o benefício mais óbvio do software de código aberto é que ele normalmente não custa nada. O exemplo do Ubuntu Linux acima deixa isso claro – ao contrário do Windows, você pode instalar ou distribuir quantas cópias do Ubuntu quiser, sem restrições. Servidores podem ser particularmente úteis e se você estiver configurando um servidor, basta instalar o Linux nele. Além disso, se estiver configurando um cluster virtualizado de servidores, você pode facilmente duplicar um único servidor Ubuntu. Dessa forma, você não precisa se preocupar com o licenciamento e quantas instâncias do Linux você tem permissão para executar.

Outras vantagens

Um programa de código aberto também é mais flexível. Por exemplo, a interface do Windows 8 decepcionou muitos usuários antigos do Windows. Como o Windows é de código fechado, nenhum usuário do Windows pode pegar a interface do Windows 7, modificá-la e fazê-la funcionar corretamente no Windows 8. (Alguns usuários do Windows tentaram, mas este é um processo bem difícil)

Veja o que é e para o que serve! – Foto: Reprodução/ How To Geek

Quando um desktop Linux como o Ubuntu apresenta uma nova interface de desktop da qual alguns usuários não são fãs, os usuários têm mais opções. Por exemplo, quando o GNOME 3 foi lançado, muitos usuários do Linux ficaram insatisfeitos. Dessa forma, alguns pegaram o código da versão antiga, GNOME 2, e o modificaram para que ele rodasse nas últimas distribuições do Linux. Por outro lado, alguns pegaram o código do GNOME 3 e o modificaram para fazê-lo funcionar da maneira que eles preferiram. Outros usuários mudaram para desktops alternativos. 

Portanto, se o Windows fosse de código aberto, os usuários do Windows 8 teriam mais opções e flexibilidade. 

Além disso, o software de código aberto também permite que os desenvolvedores “subam nos ombros de gigantes” e criem seu próprio software. Testemunhe o Android e o Chrome OS, que são SO baseados em Linux e outros softwares de código aberto. Por fim, o núcleo do OS X da Apple – e, portanto, do iOS – também foi construído em código aberto.

Perguntas Frequentes

O que é um sistema operacional de código aberto?

Se um programa (SO) for de código aberto, seu código-fonte estará disponível gratuitamente para os seus usuários. Dessa forma, os seus usuários – e qualquer outra pessoa – podem pegar esse código-fonte, modificá-lo e distribuir suas próprias versões do programa.

O que é código aberto e fechado?

Um programa de código aberto é aquele que disponibiliza o seu código-fonte gratuitamente. Por outro lado, o de código fechado é aquele que não disponibiliza o seu código-fonte.

Por que o Linux é chamado de sistema de código aberto?

Pois o Linux é um SO de código aberto, ou seja, disponibiliza o seu código-fonte e permite que os usuários peguem esse código-fonte, modifiquem ele e distribuam suas próprias versões do programa.

Gostou? O que achou? Deixe seu comentário. Além disso, não se esqueça de entrar no nosso grupo do Telegram. Basta clicar em “Canal do Telegram” que está localizado no canto superior direito da página!