Publicado em: 20/4/2016
Em meu último post falei sobre o WhatsApp e o golpe que aplicam por meio dele. Lá eu cheguei a comentar que o WhatsApp tem o código fechado (closed source) e o comparei com o Telegram que tem código aberto (open source), mas aí ficou a dúvida: Por que cada um tem um tipo de licença diferente e por que cada qual escolheu trabalhar com essa licença?
Não dá pra dizer de forma assertiva o porquê de cada uma das empresas ter tomado essa decisão, porém, vamos analisar cada tipo de licença para que, em nossos projetos, possamos escolher o que for mais indicado para atingir os nossos objetivos.
O código fechado ou software proprietário, como é conhecido pela Open Source Initiative, é todo software que tem o código fonte suprimido e/ou que faça alguma restrição com relação a manipulação do código fonte.
Algumas pessoas determinam como closed source tudo aquilo que não é código aberto. Em minha visão isso é um erro, pois o Microsoft’s Shared source é um exemplo de licenciamento em que o código fonte é disponibilizado, mas não sob os termos Open source license, o que não o torna um closed source – apesar de não ser open source.
Nos sistemas closed source, por terem um código restrito, normalmente há limitações com relação ao conhecimento em torno do seu desenvolvimento, o que por consequência limita o acesso ao código fonte, já que é preciso aceitar uma licença específica que restringe a manipulação do código – sendo possível, em muitos casos, ler apenas o código para conhecê-lo.
Quanto aos sistemas que não possuem a “facilidade” de permitir o acesso aos fontes aceitando uma nova licença, há uma possibilidade de acessá-los: através da engenharia reversa, mas que normalmente são inviáveis devido ao alto grau de complexidade para se obter o código, além de ser ilegal.
– Resguardar segredos da empresa;
– Resguardar novas tecnologias;
– Maior credibilidade.
O código aberto (Open Source) é um sistema de licenciamento que permite que o código fonte de software possa ser utilizado, estudado e modificado por qualquer usuário sem nenhum tipo de autorização prévia, mas o desenvolvedor original do software determina as condições de uso e de distribuição.
Quando falamos de código aberto é comum achar que ele é o mesmo que software livre, mas não é. Qualquer licença de software livre é também uma licença de código aberto, mas o contrário não é necessariamente verdade, isso acontece porque o código aberto não compartilha das quatro liberdades essenciais definidas pela Free Software Foundation, que são:
– Executar o software como desejar, para qualquer propósito;
– Estudar o software e adaptá-lo como quiser;
– Redistribuir cópias para ajudar outros;
– Distribuir cópias de suas versões modificadas.
– Gratuito;
– Liberdade de personalização;
– Não há dependência de um fornecedor;
– Possibilidade de implementar novas features de acordo com a necessidade.
Não dá pra dizer que o open source é melhor que o closed source ou vice-versa. Há muitos outros pontos a serem colocados na mesa na hora de adotar um software de código aberto ou fechado e, esses pontos vão variar de empresa para empresa.
Contudo, é bom saber os pontos positivos de cada um para identificar qual é o melhor, de acordo com a nossa realidade.