分页: 1 / 1

我理解的GNU哲学

发表于 : 2008-07-31 10:36
earthengine
我是程序开发者。从多年来对业界的观察,我发现软件的本质就是合作。基本上,除了BIOS,任何软件都不能够独立存在,或者说独立存在的时候是没有任何价值的。因此,软件开发首要的考虑因素就是和其它软件合作。在业界,这一般叫做重用。而它的价值就在于——避免重新发明轮子。

当然,在开源软件里面,这一点是体现得最为明显的:因为源代码都公开了,相当于所有的实现细节都已经公开。那么各种形式软件重用都成为了可能。如果是自由软件,甚至还能通过调整源代码的方式来让其它软件适应你。不过,应该看到的是,即使是闭源软件如MS Office,也不能不通过COM这样的方式实现重用。

那么,从重用的程度看,我们排出如下顺序:
闭源软件: 二进制重用(无法修改被重用代码的行为,无法直接得到未公开功能,需要专门的机制)
开源软件:源代码重用(修改被重用代码可能违反版权,可以得到任何已实现功能,不需要专门机制)
自由软件:源代码重用(可以修改被重用代码的行为,可以得到任何已实现功能,不需要专门机制)

由上可以看出,从闭源到自由,重用的可能性越来越高。而随着软件平台趋于开放和复杂,闭源软件的重用方式会越来越显示出它的局限性。这就是为什么微软要从COM转向基于中间代码的.NET的根本原因:很明显,从COM到.NET,代码重用的方便程度大大提高了。但是当然,这种重用无论如何也比不上开源和自由软件。

发表于 : 2008-07-31 16:25
佚之狐L
抽象、封装、继承、多态
总之一句话,我们是解决问题的

发表于 : 2008-07-31 16:34
Tenyears
或者说独立存在的时候是没有任何价值的 对bios也适用

发表于 : 2008-08-22 19:13
白开水隐士
听说过OpenBIOS (LinuxBIOS) 吗?将Linux核心装在BIOS芯片上,超快8秒进入系统……

发表于 : 2008-08-22 22:15
佚之狐L
白开水隐士 写了:听说过OpenBIOS (LinuxBIOS) 吗?将Linux核心装在BIOS芯片上,超快8秒进入系统……
听说过,开源的BIOS

发表于 : 2008-08-23 0:16
想入非非
Gun’s Not Unix!!! :wink: 支持。。。

发表于 : 2008-09-01 21:56
自由建客
:lol:

发表于 : 2008-09-19 1:45
PhoenixJ
楼主所理解的自由和开源软件,似乎正好与正统观点相反。