光环大数据教你如何利用好开源协议这块盾牌

编辑:光环大数据 来源: 互联网 时间: 2017-12-15 17:39 阅读:

光环大数据(大数据培训班的专业机构),近来,开源软件被抄袭事件层出不穷,开发者直指谴责,抄袭者无动于衷,最终不了了之。对此,不少开发者在谴责抄袭者的同时,也在提醒更多同行以开源软件协议来捍卫自己辛苦劳动的成果。然何为开源协议?前段时间,Fa ...

Hadoop 培训 开源 Android 开源软件

近来,开源软件被抄袭事件层出不穷,开发者直指谴责,抄袭者无动于衷,最终不了了之。对此,不少开发者在谴责抄袭者的同时,也在提醒更多同行以开源软件协议来捍卫自己辛苦劳动的成果。然何为开源协议?
前段时间,Facebook 正式宣布修改 React、Jest、Flow 和 Immutable.js 的授权协议为 MIT。

 


对此,其当时发声明表示:Facebook 将重新授权开源项目,将 React、Jest、Flow 和 Immutable.js 协议更改为 MIT license。因为意识到 React 是 Web 开源生态基础的重要组成,不希望因为非技术的原因而阻止其发展。
做出这个决定主要是因为这几周社区所反映出的失望和困惑。虽然我们还是认为 BSD + 专利许可的做法是有好处的,但确实没有能够说服整个社区。
我们知道在授权协议的问题之后,很多团队都开始了替换 React 的过程。我们不奢求现在的这个决定能赢回这些团队的心,但我们是真心的。友好的合作和竞争能推动我们大家共同前进。
当然,现在的这一决定肯定会引起大家对 Facebook 其他开源项目的疑问。目前我们许多其他受欢迎的项目将保留 BSD + 专利许可的做法。当然我们也正在对这些项目进行评估,但每个项目都是不同的,授权协议的选择需要取决于多种因素。
我们将在下周对 React 16 发布这些更新,在 React 16 中我们已经完全重写了内部部件,以提供更强大的功能,之后我们也将分享更多关于我们如何重写 React 的信息,我们希望我们的工作能够激励广大的开发人员,无论你现在是否在使用 React。我们希望将对授权协议的讨论放到一边,回到我们最关心的事情:做出优秀的产品。
这样似乎挺好的,但回归文章开始,这究竟意味着什么呢?不同的开源许可有什么含义?
接下来,本文带领大家共同了解主流的开源许可,且如何将其应用到 GitHub 的开源项目中。
认证主流的开源许可有一点是共通的,即开放原始码组织( Open Source Initiative ,简称 OSI)已认证。
OSI 于 1998 年成立,旨在管理开放源码定义以及审核条款,其官方定义为:
开放源代码促进会(OSI)是一个致力于推动开源软件发展的非盈利组织,旨在推广和倡导开放源代码,并在开源的不同社区之间搭建桥梁。
许可开源许可里面详尽表述了开发者获得代码后拥有的权利,可以对他人的作品进行何种操作,又不可以进行哪些操作。然大多数开源许可包括以下声明:
软件可以修改,商业使用和发布。软件可以被修改和个人使用。软件中必须包含许可和版权声明。软件作者对软件不提供保证,也不承担任何责任。
下面我们将一一盘点那些从严格到宽松的主流许可(基于用户角度)。
GNU 通用公共授权第 3 版(GPLv3)GPLv3 (https://www.gnu.org/licenses/gpl-3.0.html)是最严格的许可之一。它为软件的作者提供了高度的保护。
源代码必须在软件发布时公开。软件的修改必须在相同的许可下发布。必须记录对源代码所做的更改。如果在创建软件时使用了专利材料,则授予用户使用该材料的权利。如果用户对使用该专利材料的任何人提出起诉,他们将失去使用该软件的权利。
GPLv2 也很受欢迎。与 GPLv3 的主要区别在于专利授权条款。
第 3 版增加了该条款,以防止公司向用户收取专利使用费。
使用 GPLv3 的热门项目有:Bash 和 GIMP。Linux 使用 GPLv2。
Apache License 2.0Apache License 2.0 为用户提供了更多的灵活性。
当软件发布时,源代码不需要公开。对软件的修改可以在任何许可证下发布。必须记录对源代码所做的更改。它提供与 GPLv3 相同的专利使用保护。它明确禁止使用在该项目中已有的商标名称。
使用 Apache License 2.0 的流行项目有 Android、Apache 和 Swift。
BSD 许可证BSD 有两个主要版本:2-clause 和 3-clause。它们都为用户提供了比 Apache License 2.0 更好的灵活性。
当软件发布时,源代码不需要公开。对软件的修改可以在任何许可证下发布。对源代码所做的更改可能没有记录。它没有提供明确的专利使用情况。许可证和版权声明必须包含在源代码编译版本的文档中(而不是仅在源代码中)。BSD 3 条款规定,作者和贡献者的名字不得用于宣传未经许可的软件派生的产品。
使用 BSD 许可证的主流项目有:Go(3-clause)、Pure.css(3-clause)和 Sentry(3-clause)。
MIT 许可MIT 是最宽松的许可之一,也是更受欢迎的一个,但它为开源软件的作者提供了较低的保护。
当软件发布时,源代码不需要公开。对软件的修改可以在任何许可证下发布。对源代码所做的更改可能没有记录。它没有提供明确的专利使用情况。
目前使用 MIT 的热门项目有:Angular.js、jQuery、Rails、Bootstrap 等等。
在今年的 9 月 25 日之前,Facebook 的 React.js 还是拥有 BSD-3 + 专利许可。这意味着,如果你想起诉 Facebook 或其任何子公司,那么你将失去使用 React(或同一许可下的任何其他软件)的权利。
不过现如今 React 改为了 MIT 许可。即使现在起诉 Facebook,仍然能使用 React。终于解脱了!
将许可证应用于开源项目开源许可证可以保证使用者明确了解所有者的权利,且不易侵犯对方权益。只需在项目的根目录下添加 LICENSE、LICENSE.txt 或 LICENSE.md 文件。
GitHub 创建步骤如下:在浏览器中打开 GitHub 仓库;在根目录下,点击“创建新文件”;将文件命名为“LICENSE”;点击选择一个许可证模板;选择一个许可证(本文中提到的所有许可证都有);一旦选择,点击审查并提交;提交文件。
总结GPL 是最严格的许可之一。MIT 是最宽松的许可之一。其他主流的许可还有 Apache License 2.0 和 BSD。在 GitHub 项目上应用许可时,那么需要先基于 GitHub 的许可模板创建一个 LICENSE  文件。
倘若以上仍无法清楚地了解各种协议的区别,乌克兰程序员 Paul Bagwell 画了一张经典分析图说明应该如何做选择。在国内,阮一峰老师将其汉化,仅需两分钟足以理解 6 种许可证之间的较大区别。

 

     大数据时代,大数据培训机构,就选光环大数据!

   原创文章,转载请注明出处:光环大数据官网。


大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服

你可能也喜欢这些

在线客服咨询

领取资料

X
立即免费领取

请准确填写您的信息

点击领取
#第三方统计代码(模版变量) '); })();
'); })();