秩序带来的繁荣:束缚源代码的开源许可证 虽然说了很多开源软件的好,但这里要强调一个事实:尽管闭源商业软件看上去不那么高风亮节,但闭源和商业并不是邪恶的象征。相反,严格的代码控制、庄重的商业行为,建立起了一条又一条高效的井井有条的IT产业链,数以亿计的人因此沐浴到了来自高科技的曙光。繁密但又有条不紊的商业规则,似乎在述说着这样一个道理:自由与否并不重要,但合理的秩序却必然能带来繁荣。
开源世界也意识到了这个问题,闭源软件有它们的规则,开源世界自然也有自己的秩序,不然哪来上文这么多重量级的开源软件。开源世界的规则叫“开源许可证”,如果开源软件选择了某种许可证,你要使用这些开源的代码,就必须遵循许可证的条条框框。没错,你抄是可以抄,但不能随便抄。把别人的书抄一边,然后说这是自己的著作,还有没有天理了? 目前比较流行的开源许可证有下面几种。 GPL(GUN General Public License)
GPL无疑是影响最深远的开源许可证,谁叫GUN社区如此强势,而Linux的代码又这么多人要用呢。GPL的特点两字可形容:“严格”。只要你写的软件某部分使用了遵循GPL协议开源的代码,你软件的这部分也必须使用GPL开源。GPL能够促进更多开源软件的出现,但也因其相当烈性的传染性倍受争议。这种武功秘籍人人能看的激进思想,不是什么人都能接受的。 使用GPL许可证的著名开源软件有Linux、eMule、MySQL等等。 BSD(Berkeley Software Distribution license)
和GPL相比,BSD这个许可证可是宽容多了。使用了BSD开源软件的代码,你不需要将修改后的代码再次开源,只需要注明原作者的版权声明即可。不过如果你选择开源,也只能选择BSD许可证开源,不能使用GPL这类的许可证。BSD是一个很宽松的协议,可是即使如此宽松,往往也有人不遵守,抄了代码就说是自主研发。这究竟是个什么理呢?我不仅陷入了深深的沉思。 使用BSD许可证的著名开源软件有FreeBSD、OpenBSD等一系列的BSD操作系统。 APL(Apache License)
APL也是一个十分松散的许可证,很受商业软件的欢迎。如果你使用了APL许可证的开源代码,不会被强制开源,只需要一一说明有哪些代码被修改过即可。和BSD相比,APL兼容性更好,能够兼容GPL和商业授权。 我们熟悉的安卓就使用了APL 2.0许可证,对商业公司十分友好,不会被强制开源,所以大家都爱用。不过,某些厂商的脸皮超乎想像,用了安卓的代码还说自主研发,不遵循APL 2.0声明Google的版权,说多了都是泪。 开源许可证还有很多种,如MIT、LGPL等等,这里就不一一罗列了。在许可证的加持下,开源软件能够按照作者的理念传承。比如说如果作者想要坚守开源精神,并希望能够汇聚大家的力量共同研究,可以使用GPL许可证;如果作者希望源代码能够赚取更多的利润,可以选择宽松的BSD和APL。开源固然自由,但和商业也并不矛盾。许可证的存在,让开源软件成功融合商业运作成为了可能。 |