开放源代码软件乱弹

学习编程其实和学习如何写作一样,借鉴与大量阅读是必不可少的,而且,编程相对于写作自由程度更低,基本上现在的新观念新说法都是新瓶装旧酒。比如从DDE到COM到DCOM,然后是web service与WCF,如果大家对这些东西有印象,就会发现它们最基本的东西都是一样的。所以就编程而言,具体使用的技术其实并不重要,关键是实现的东西有创意。同样一团泥巴,大师手里出来的就是精品,在一般人手里就是脏东西。

想要了解一个软件使用了什么样的技术,设计文档是无法体现的,而且很可能都是与真正的实现不搭边,只有代码是实际在运行的,最基础的东西,它不会骗人。我们应该感谢那些鼓吹OpenSource开放源代码的人,他们让我们这些程序员有了瞻仰大师级作品的机会。这也是软件业的一个奇怪现象,如果写作也和编程一样,那么对于想要学习莎士比亚作品的人而言,只有进入莎士比亚写作公司的人才有这样的机会,其它人只能看到作品封面上的金字。现在我的工作与微软产品关联很深,也很喜欢微软产品的人性化和强大功能。但也经常安装个SuseLinux或者FreeBSD用一用,呼吸一下不一样的空气。

下面我的介绍主要基于个人兴趣,也就是C、C++方面编程以及PHP为主的网络应用。如果工作中遇到一个问题,不知该如何解决或者实现,去CodeProject.com搜寻相关的project是我第一选择,经常还要超出我对Google的依赖。CodeProject的评分系统使得我们对于代码或文章的质量有着直观的比较。而且CodeProject上的项目基本都是轻量级的,再次利用起来非常方便,简单点说,CodeProject就是我心目中最佳的轮子工厂。

第二个经常逛的就是更著名的SourceForge,这是OpenSource的大本营,齐集了世界上几乎大半以上的优秀开源软件,除了少数家族化作战的开源代码系列,比如Apache家族、Eclipse家族、Perl家族、开源操作系统家族系列(如Linux,FreeBSD,OpenBSD)等等,我们可以在这里找到几乎所有日常需要的软件,而不用花一分钱去购买。SourceForge上会有项目的活跃程度、下载次数等等统计数据,通过数据可以了解某个项目大体上的受欢迎程度。

开源软件都有什么,举例来说,我使用的是WindowsXP,都有什么软件可以使用呢?最常用的浏览器,我们可以使用FireFox或者同族的Flock,当然,IE、Opera也是免费的,只是不开放源代码而已。办公软件,可以使用OpenOffice,最新版本是2.x,功能与微软产品有的一拼。作开发,可以使用文本编辑器NotePad++或者是Eclipse IDE,加上AddIn几乎什么语言都支持。影音可以选择MPlayer,功能强大还不占资源,如果嫌配置麻烦可以下载热心人编译优化好的版本。图像处理可以选择GIMP,号称开源中的PhotoShop。Ftp软件可以选择FileZilla,我现在网站维护几乎就用它而不是什么破解版的CuteFtp。共享下载软件就更多了,比如国外的BT客户端几乎都是开源的,eEmule是开源的。即时通讯软件(QQ类)大多数是与MSN或者yahoo进行互通,开源的也有,不过实话说不太好用。压缩软件可以使用7Zip,兼容rar与zip格式,开源的。

如果更彻底,可以使用完全开源的操作系统,上面可以选择的软件更多,我比较喜欢FreeBSD,因为它相对Linux更加简单优雅。Linux发布包里的SuseLinux(由Novell公司掌控)界面舒服,是我喜欢的类型。

本来想谈谈如何阅读源代码,但是说着就跑题了,下一次再谈。

《开放源代码软件乱弹》有1个想法

发表评论