我们知道一个Node.js项目中必定有一堆的依赖。毫无疑问的是这些依赖基本上都是开源的,但是却可能有不同的开源协议(如果你不知道什么是开源协议,可以看看开源的法律保护)。不同的开源协议可能决定了你的项目使用何种开源协议,是否可以闭源,是否可以商业化。下图是乌克兰程序员 Paul Bagwell画的一张分析图
以Apache协议为例,如果你使用了Apache协议的软件依赖,那么就请将你的项目上放上该软件的版权说明。这虽然是微小的事情,但却是有必要的。所以,让我们开发一个命令行来审查所有依赖的开源协议。
学习资源
- Node.js 命令行程序开发教程
-
要求
要求按开源协议的不同将依赖分类,最好能在程序分析完毕之后,开启一个Web页面,展示依赖分类
- 根据依赖的开源协议,综合分析后,给自己的项目提出一些建议
- 工程方面
- 请在Github上正式发布你的工具