跳转到内容

使用源代码/开源不等于自由软件

来自维基教科书,开放世界中的开放书籍

让我们先澄清一些术语并定义它们

程序 : 编程完成的独立可用的单个文件,用于特定目的。
套件 : 一组协同工作的程序,用于执行一系列任务。
产品 : 编程的结果,可以是单个程序、套件或整个操作系统。
源代码 : 用于生成产品的全部人类可读的代码集合。
开源 : 用于描述任何软件,其中您至少有权查看生成该产品的源代码。
免费软件 : 任何可免费获得的产品。
开源 : OSI 批准的产品的标签。
自由软件 : FSF 批准的产品的标签。

当有人说“开放”这个词时,你会立即想到什么?你会想到一个半开的东西吗?一个显而易见的东西?任何人都可以看见?畅通无阻?或者可能是可以立即使用的东西?当你身处编程世界时,这些可能性很接近,但还不足以表达“开放”的含义。那么“免费”这个词呢?你会想到你不需要付费的东西吗?还是你想到一个不受限制的东西?同样地,在程序员的世界里,这要复杂一些。

对于外行来说,开源和自由软件是同一件事;然而,这两个团体之间关系紧张,有时甚至充满敌意。这些编程派别相信特定的自由,并通过开发其软件来实现这些目标的改善。

人们往往喜欢用他们对待实物财产的方式来思考这些知识产权。如果用这种方式看待各种开源模型,那么公有领域就是公共财产,任何人都不能以任何理由或用途拒绝访问该代码。GPL 代码是私有财产,授予公众使用,条件是所有由此产生的发布作品都保持在相同的位置。BSD 是任何人都可以出于任何理由或用途使用的财产,条件是他们保持适当的署名。

本章以类似“就像租车一样,使用许可代码或软件,你必须承担责任”结束。这将引出下一章。

华夏公益教科书