Carregando...
Carregando...
Ajude a melhorar a plataforma
Leia o trecho a seguir:
As licenças de software livre estabelecem diferentes formas de uso e redistribuição, mas compartilham a ideia de que o código-fonte deve estar acessível e que qualquer pessoa deve poder modificá-lo e redistribuí-lo. Algumas licenças exigem que apenas as partes do código derivado que correspondem ao código original mantenham a mesma licença, sendo chamadas de recíproca [preencher 1]. Já outras exigem que todo o trabalho derivado — inclusive partes não relacionadas diretamente ao código original — siga os mesmos termos da licença, sendo conhecidas como recíproca [preencher 2].
Neste contexto, os termos [preencher 1] e [preencher 2] são corretamente substituídos por:
Explique melhor esta questão
Abre o Tutor com o enunciado e as alternativas já no campo — você revisa e envia.
Esta questão foi verificada por um de nossos administradores.
Alternativa (E) - 1 – parcial; 2 – total
A questão aborda um aspecto fundamental das licenças de software livre: o conceito de reciprocidade, também conhecido como "copyleft". As licenças de software livre garantem liberdades essenciais, mas diferem na forma como essas liberdades são aplicadas aos trabalhos derivados. A reciprocidade dita se e como essas liberdades devem ser mantidas em projetos que incorporam ou modificam o código original.
As licenças de software livre são o mecanismo legal que garante as quatro liberdades essenciais: a liberdade de executar o programa como se deseja, para qualquer propósito (liberdade 0); a liberdade de estudar como o programa funciona e adaptá-lo às suas necessidades (liberdade 1); a liberdade de redistribuir cópias para que você possa ajudar o próximo (liberdade 2); e a liberdade de distribuir cópias de suas versões modificadas para outras pessoas (liberdade 3). Para que as liberdades 1 e 3 sejam efetivas, o acesso ao código-fonte é um pré-requisito.
O conceito de "copyleft" surge para assegurar que essas liberdades sejam mantidas mesmo em obras derivadas. Uma licença copyleft é uma licença de software livre que exige que as cópias e obras derivadas do software também sejam software livre. No entanto, o "grau" ou "alcance" dessa exigência pode variar, e é isso que a questão explora. Existem licenças que aplicam a reciprocidade de forma mais limitada e outras que o fazem de maneira mais abrangente.
Vamos analisar as lacunas do enunciado e as alternativas:
[preencher 1]: Refere-se a licenças que exigem que apenas as partes do código derivado que correspondem ao código original mantenham a mesma licença. Isso descreve uma reciprocidade com aplicação limitada ou "parcial". As partes não diretamente derivadas do código original podem ser licenciadas sob outros termos, inclusive proprietários, sem quebrar a licença original. Exemplos comuns incluem a Licença Pública Geral Menor (LGPL) ou a Licença Pública Mozilla (MPL), que aplicam copyleft apenas a bibliotecas ou arquivos específicos, permitindo que o restante de um software maior seja licenciado de forma diferente.
[preencher 2]: Refere-se a licenças que exigem que todo o trabalho derivado — inclusive partes não relacionadas diretamente ao código original — siga os mesmos termos da licença. Isso descreve uma reciprocidade com aplicação ampla ou "total". Qualquer projeto que incorpore ou seja derivado do código original deve, em sua totalidade, ser distribuído sob a mesma licença. O exemplo mais conhecido é a Licença Pública Geral GNU (GPL), que garante que qualquer software derivado seja também copyleft forte.
Agora, vamos avaliar as alternativas propostas:
| Alternativa | [preencher 1] | [preencher 2] | Análise | | :---------- | :----------------------------- | :----------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | (A) | 1 – adaptativa | 2 – distributiva | Os termos "adaptativa" e "distributiva" não são classificações padronizadas para descrever os diferentes alcances da reciprocidade em licenças de software livre. | | (B) | 1 – extensível | 2 – protetiva | Similarmente, "extensível" e "protetiva" não são termos técnicos ou classificações formais para distinguir esses tipos de reciprocidade. | | (C) | 1 – copyleft | 2 – BSD | "Copyleft" é o termo geral para licenças que impõem a manutenção das liberdades em obras derivadas, não uma distinção de sua extensão. "BSD" é um tipo de licença permissiva, que é o oposto da reciprocidade total; ela permite a criação de obras proprietárias sem impor o copyleft. | | (D) | 1 – permissiva | 2 – colaborativa | "Permissiva" descreve licenças que não impõem copyleft (como BSD, MIT), permitindo que obras derivadas se tornem proprietárias, o que não se encaixa na descrição de "recíproca". "Colaborativa" é um conceito genérico, não uma classificação de licença. | | (E) | 1 – parcial | 2 – total | Esta alternativa se encaixa perfeitamente na descrição. A reciprocidade parcial aplica-se apenas às partes derivadas, enquanto a reciprocidade total exige que todo o trabalho derivado adote a mesma licença. Estes termos descrevem de forma clara e didática as nuances da questão. |
A alternativa (E) utiliza termos que descrevem de forma concisa e precisa a diferença no alcance da reciprocidade das licenças, que na prática são conhecidas como copyleft "fraco" (ou "file-level") e copyleft "forte" (ou "project-level"), respectivamente.
A distinção entre os tipos de reciprocidade em licenças de software livre é crucial para entender como o código-fonte pode ser usado e redistribuído em diferentes contextos. A licença de reciprocidade parcial (ou copyleft fraco) permite uma maior flexibilidade para desenvolvedores que desejam combinar código livre com código proprietário em um mesmo projeto, aplicando o copyleft apenas às modificações ou ao próprio componente livre. Já a licença de reciprocidade total (ou copyleft forte) garante que a liberdade do software seja mantida em toda e qualquer obra derivada, promovendo um ecossistema de software mais abertamente disponível e modificável.
Alternativa (E).