常见的开源协议区别
软件在追求“自由”的同时,不能牺牲程序员的利益,否则将会影响程序员的创造激情,因此世界上现在有 60 多种被开源促进组织(Open Source Initiative)认可的开源许可协议来保证开源工作者的权益。
开源协议规定了你在使用开源软件时的权利和责任,也就是规定了你可以做什么,不可以做什么。开源协议虽然不一定具备法律效力,但是当涉及软件版权纠纷时,开源协议也是非常重要的证据之一。
对于准备编写一款开源软件的开发人员,也非常建议先了解一下当前最热门的开源许可协议,选择一个合适的开源许可协议来最大限度保护自己的软件权益。
一、什么是开源许可协议
一个开源许可是一种类型的许可证为计算机软件和其它产品,其允许源代码,蓝图或设计使用,修改和/或在确定的条款和条件共享。允许最终用户和商业公司审查和修改源代码,蓝图或设计,以满足他们自己的定制,好奇心或故障排除需求。开源许可软件大多是免费提供的,但并非必须如此。只允许非商业性的许可证仅为个人使用而重新分发或修改源代码通常不被视为开源许可。但是,开源许可证可能有一些限制,特别是关于软件来源的表达,例如要求保留作者姓名和代码中的版权声明,或者要求重新分发许可软件仅在相同的许可下(如在Copyleft许可中)。一组流行的开源软件许可证是开源计划(OSI)基于其开源定义(OSD)批准的许可证
二、常见的开源协议有哪些
1) BSD(Berkeley Software Distribution,伯克利软件发布版)协议
BSD 协议基本上允许用户“为所