开源项目
开放式源代码项目
开源(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版本,包括LAMP网站的”中心思想“:ApachePHP,和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对ApacheJakarta项目的大力扶持,使得Java有了强劲的Tomcat服务器,有了Apache Commons一系列基础开发组件;IBM的Eclipse的扶持,则让Java有了强劲的开发环境。跟PHP不同的是,Java的开源更多集中在功能模块上的开发,而面向最终用户方面的开源应用系统则明显不如PHP那么多,从功能上看,也不如PHP开发应用那么成熟,这主要原因是Java程序对服务器要求较高,共享主机时,功能有限的PHP在安全、管理方面也更加灵活、可控。
开源项目的管理工具
ZenTaoPMS:是中小型企业项目管理的最佳选择。ZenTaoPMS基于国际流行的敏捷项目管理方式——Scrum,同时也融合了PMP中的很多概念,体现了Scrum中迭代开发的精髓,很好地融合了燃尽图的概念。ZenTaoPMS基于LGPL协议,企业或者个人都可以免费获取禅道项目管理软件的源代码并安装使用,并可以结合自己的实际需要进行修改。
参考资料
开源中国 - 开源中国.开源中国 - 开源中国.2023-02-22
最新修订时间:2024-06-27 14:16
目录
概述
简介
相关工作
应用
参考资料