Type of license for open source .Net app, which uses some Microsoft api [closed]
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this questionLet's say that I want to develop an app using .Net and Microsoft UccApi. I'd like to make开发者_JAVA百科 it open source. Am I eligable to do it? What type of open source license must I use? What limitations must I keep in mind?
Open source licenses impose constraints on the way in which a given software can be distributed. The fact that you are using a Microsoft based product to develop your software does not pose any particular restriction on the distribution of software that you are developing. You are free to do as you want. To choose an appropriate license you must consider the restrictions that are associated to each specific license and choose whatever option is best for you. I'll give a few rough examples just to give an overview:
Do you want just to be recognized for developing the software and you do not expect anything else? It is fine if someone takes your software, modifies it without distributing the improvements and the sells it as a commercial software? Then evaluate BSD or MIT or Apache licenses.
Are you fine if someone embeds your software as a statically linked library, even in a commercial project, but you would like all improvements to your original software to be distributed back to you? Then evaluate a LGPL license.
You want to "contribute to the community" and you would like that evey work derived from your software should be a "community contribution too". In this case choose a GPL. Every software derived from yours must be open sourced as well. Note that this does not prevent someone from selling the derived software when he publishes the source code.
If you don't want in any case that your software could be part of a commercial product then you must explicitly disallow it in your license.
精彩评论