Havia uma pergunta semelhante sobre os esquemas de banco de dados: Copiando o esquema de banco de dados de um concorrente? Respondi lá que copiar todo o esquema provavelmente seria uma violação de direitos autorais, dependendo da escala da cópia, apreciada por um juiz.
Mesmo que sua pergunta seja semelhante, responderei exatamente o contrário: você pode copiar assinaturas de métodos. Por quê?
De fato, as assinaturas de métodos vêm do senso comum.
Em primeiro lugar, se dermos um exemplo extremo, a Microsoft não podeRandom criar copyright do nome e processar todos que usarem a palavra Randomem qualquer aplicativo.
Em segundo lugar, o que você está tentando fazer exatamente? Reimplementando o .NET Framework? Por quê? Não há necessidade de reinventar a roda . Se você sabe como torná-lo melhor, mais intuitivo etc., é provável que você venha com melhores nomes de classes e métodos, uma organização melhor etc. Se você tentar copiar a estrutura do .NET Framework para portá-la para outra idioma , então você não é um concorrente direto da Microsoft, portanto, eles não têm motivos sérios para processá-lo (isto dito, eles o processarão se você copiar o código-fonte). Na verdade, eles até se beneficiarão com você: copiar essa estrutura para outras estruturas não apenas mostrará o sucesso do .NET Framework, mas também facilitará o trabalho dos desenvolvedores do .NET com outros idiomas e os desenvolvedores de outros idiomas para aprender. .INTERNET.
Em terceiro lugar, eles têm coisas mais sérias para fazer do que processar todos que copiarem os nomes dos métodos e classes do .NET Framework.
Agora, se sua intenção é copiar todo o .NET Framework e criar um produto que será usado por muitos desenvolvedores, consulte um advogado antes de correr riscos.
Um exemplo:
Fiquei totalmente descontente com a limitação de vergonha de 259 caracteres nos caminhos de arquivo no .NET Framework e a incapacidade de usar transações de código no nível do arquivo. Portanto, implementei minha própria Fileclasse com os métodos que funcionariam conforme o esperado para qualquer caminho, não apenas os pequenos e pequenos, e implemento transações. Na primeira versão, decidi clonar os nomes dos métodos em Filee Directoryclasses . A Microsoft me processaria por fazer isso? Eu duvido.
Em todos os casos, na segunda versão, eu vim com uma nova sintaxe new File(string fileName), que acho muito mais intuitiva para mim . Às vezes, a clonagem de nomes de métodos é útil, mas você deve ter um bom motivo para fazê-lo.