Hubo una pregunta similar sobre los esquemas de bases de datos: ¿ Copiar el esquema de base de datos de un competidor? Respondí que copiar todo el esquema probablemente sería una infracción de derechos de autor, dependiendo de la escala de la copia, apreciada por un juez.
Incluso si su pregunta es similar, responderé todo lo contrario: puede copiar firmas de métodos. ¿Por qué?
De hecho, las firmas de métodos provienen del sentido común.
En primer lugar, si tomamos un ejemplo extremo, Microsoft no puede proteger los derechos de autor del nombreRandom
y demandar a todos los que usarán la palabra Random
en cualquier aplicación.
En segundo lugar, ¿qué estás tratando de hacer exactamente? ¿Reimplementar .NET Framework? ¿Por qué? No hay necesidad de reinventar la rueda . Si sabe cómo hacerlo mejor, más intuitivo, etc., es probable que obtenga mejores nombres de clases y métodos, una mejor organización, etc. Si intenta copiar la estructura de .NET Framework para portarlo a otro idioma , entonces no eres un competidor directo de Microsoft, por lo que no tienen motivos serios para demandarlo (dicho esto, lo demandarán si copia el código fuente en sí). En realidad, incluso se beneficiarán de usted: copiar dicha estructura a otros marcos no solo mostrará el éxito de .NET Framework, sino que también facilitará que los desarrolladores de .NET trabajen con otros idiomas, y que los desarrolladores de otros idiomas aprendan .RED.
En tercer lugar, tienen cosas más serias que hacer que demandar a todos los que copien los nombres de los métodos y clases de .NET Framework.
Ahora, si su intención es copiar todo .NET Framework y hacer un producto que será utilizado por muchos desarrolladores, consulte a un abogado antes de tomar riesgos.
Un ejemplo:
Estaba totalmente descontento con la vergonzosa limitación de 259 caracteres en las rutas de archivos en .NET Framework y la imposibilidad de usar transacciones de código a nivel de archivo. Así que implementé mi propia File
clase con los métodos que funcionarían como se esperaba para cualquier ruta, no solo los pequeños y pequeños, e implementaría transacciones. En la primera versión, decidí clonar los nombres de métodos File
y Directory
clases . ¿Me demandaría Microsoft por hacer eso? Lo dudo.
En todos los casos, en la segunda versión Vine con una nueva sintaxis, new File(string fileName)
que me parece mucho más intuitivo para mí . Clonar nombres de métodos a veces es útil, pero debe tener una buena razón para hacerlo.