我理解的GNU哲学

关于Ubuntu的故事或对Ubuntu的感慨及心情
回复
earthengine
帖子: 47
注册时间: 2006-07-30 17:56

我理解的GNU哲学

#1

帖子 earthengine » 2008-07-31 10:36

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

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

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

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

#2

帖子 佚之狐L » 2008-07-31 16:25

抽象、封装、继承、多态
总之一句话,我们是解决问题的
携书弹剑走黄沙,瀚海天山处处家;
大漠西风飞翠羽,江南八月看桂花
头像
Tenyears
帖子: 2245
注册时间: 2005-06-30 15:46
来自: 成都

#3

帖子 Tenyears » 2008-07-31 16:34

或者说独立存在的时候是没有任何价值的 对bios也适用
Humanity to others // 己所不欲,勿施与人
Laptop: ThinkPad X220 --- Win7 Home / Ubuntu 12.04
Desktop: Win7/Ubuntu 12.04
Server: Ubuntu12.04
头像
白开水隐士
帖子: 85
注册时间: 2008-07-01 20:49
来自: 中国四川

#4

帖子 白开水隐士 » 2008-08-22 19:13

听说过OpenBIOS (LinuxBIOS) 吗?将Linux核心装在BIOS芯片上,超快8秒进入系统……
头像
佚之狐L
帖子: 840
注册时间: 2008-01-28 13:02

#5

帖子 佚之狐L » 2008-08-22 22:15

白开水隐士 写了:听说过OpenBIOS (LinuxBIOS) 吗?将Linux核心装在BIOS芯片上,超快8秒进入系统……
听说过,开源的BIOS
携书弹剑走黄沙,瀚海天山处处家;
大漠西风飞翠羽,江南八月看桂花
头像
想入非非
帖子: 8078
注册时间: 2008-07-14 22:42
来自: Beijing
联系:

#6

帖子 想入非非 » 2008-08-23 0:16

Gun’s Not Unix!!! :wink: 支持。。。
Ubuntu User
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

#7

帖子 自由建客 » 2008-09-01 21:56

:lol:
PhoenixJ
帖子: 1492
注册时间: 2007-08-09 3:33
系统: Windows 12.04

#8

帖子 PhoenixJ » 2008-09-19 1:45

楼主所理解的自由和开源软件,似乎正好与正统观点相反。
回复