快好知 kuaihz订阅看过栏目

 

开源(Open Source,开放源码)被非盈利软件组织(美国的Open Source Initiative协会)注册为认证标记,并对其进行了正式的定义,用于描述那些源码可以被公众使用的软件,并且此软件的使用、修改和发行也不受许可证的限制。

简介

开源项目,顾名思义,开放式源代码项目.

相关工作

一谈到开源,你或许就联想到一大堆的开放源码产品,如果你是程序员的话,或许会联想到 KDE 或者 GNOME 上开发的那些工具。但是,本文要讲述的是在 Windows 平台上,遵守业界标准,开发开放源码的系统。本文介绍了一些十分有用的连接,如果你是 Windows 平台上的程序员,并且写惯了封闭源码或者专有软件,那么,请您去看看文中提到的这些连接,你会知道,在 Windows 上开发开源软件是一件更加富有成就感和挑战性的事业。

应用

尽管 Windows 是被开源社区的人们看不上眼的东西,但是还是有很多的开源软件能应用于 Windows 。 我记得在 Linux 出现之前,就有 GNU 工具被移植到 Windows。现在只是使用开源或者自由软件,你就能开发出复杂的 Windows 软件。

还有一个反向的路径:如果你在开发 Windows 版本的软件,那么可以利用那些专门针对 Windows 的工具,并充分利用他们的优点。在这种情况下,你可以使用 COM 着重来优化Windows 界面。如果你用微软的 Visual Studio 来写程序的,这样你的程序就只能在 Windows 上跑。

但是在优化这些程序的时候,你可能要在很多应用之间折衷考虑。你的程序成为 Windows 专用程序,这样,你就要遵循微软的“教诲”,以写出最好的程序。然而,很多人不喜欢这样,例如,如果你使用微软的 MAPI 作为 e-mail API ,那么你就只能从非微软平台得到简单的支持。因此,坚持标准,能为你选择正确的产品来适合自己的需求带来更大的自由。

相关系统

Windows 上至少有一个主要的开源开发系统:Perl。 ActiveState 是 Perl 的 Windows 版本的主要发行商,使 Perl 成为 Windows 上优秀的脚本工具。另外,在 Windows 上使用 Perl ,并不一定意味你在编写可移植的代码,无论在 Windows 上还是其他平台上,Perl 经常作为能方便的和操作系统打交道的语言。如果你浏览一下 CPAN的话,就会发现海量的 Perl 代码,其中的大部分都只能支持 Unix。但是,在现实生活中,还是有很多 Windows 上 Perl 代码,还有很多网站帮助 Windows 上的 Perl 用户。

工具

尽管有为数不少的网站支持 Windows 上开发开源软件的工具,但是,我还没有发现有一个网站专门用来讨论 Windows 上开源工具(或许我找的不全面)。

OSDN 有好几个网站:Freshmeat net以及SourceForge,托管着开放源码工程,但是很多是开发工具(因为他们本身就是程序员为了工作而写的)。

所有和 Windows 兼容的产品,其用户界面要么是字符界面,要么是 Web 界面,要么是类似 wxWindows 的抽象库。但是很多仅仅是交叉平台的库。

IBM 的 alphaWorks上有很多开源工具。大多数的目标平台是 Linux 或者 Java,但是也有 针对 Windows 的 XML。

对于 Web 开发人员来说,就有很多的选择。所有的市场上领先的开源应用都有对应的 Windows 版本,包括本网站的”中心思想“:Apache, PHP, 和 MySQL,对于 Windows 上的 PHP 程序员来说,笔者建议你一定要拜访一下 php4win 这个网站。

如果你不是自己开发的话,也有一些应用你可以选择,OpenOffice 是根据 Sun 的 StarOffice 的代码而建立的一个开源工程,也能工作于 Windows ,看起来似乎很有争议。另外你还可以使用 Mozilla 的浏览器。

在 Windows 平台上使用开源工具,看起来很不顺眼,如果你十分坚信开放源码的话,你就应该抛开 Windows 。但是开放源码是一个现实的存在,尽管和 Windows 相处得不是很好。

开源项目的语言工具

PHP:由于PHP短小精悍、加上PHP程序往往是没编译和没加密的,所以,PHP程序成为网上开源应用程序开发的首选语言。也正因为PHP没编译和没加密,所以,PHP开源项目很少有用于企业级应用的,同时也就缺乏大型企业对PHP在财力和技术方面的支持。PHP主要在自由的、个人或小团队开源开发中应用。SugarCRM算一个比较成功的应用在中小企业上的CRM系统。

Java:是企业级应用开发的首选语言。IBM为跟Sun争Java的主导权,同时跟Oracle和微软争企业应用的市场份额,于是IBM成为推动Java基础项目的开源开发方面最用心和最用力的企业。IBM对Apache Jakarta项目的大力扶持,使得Java有了强劲的Tomcat服务器,有了Apache Commons一系列基础开发组件;IBM的Eclipse的扶持,则让Java有了强劲的开发环境。跟PHP不同的是,Java的开源更多集中在功能模块上的开发,而面向最终用户方面的开源应用系统则明显不如PHP那么多,从功能上看,也不如PHP开发应用那么成熟,这主要原因是Java程序对服务器要求较高,共享主机时,功能有限的PHP在安全、管理方面也更加灵活、可控。

开源项目的管理工具

ZenTaoPMS:是中小型企业项目管理的最佳选择。ZenTaoPMS基于国际流行的敏捷项目管理方式——Scrum,同时也融合了PMP中的很多概念,完美地体现了Scrum中迭代开发的精髓,很好地融合了燃尽图的概念。ZenTaoPMS基于LGPL协议,企业或者个人都可以免费获取禅道项目管理软件的源代码并安装使用,并可以结合自己的实际需要进行修改。

投稿
非常不爽,删了吧! 相关词条:其他 开放源码 开放源码