您的浏览历史

开源技术选型手册 (china-pub 首发)

促销活动
  • [本书]参加电子工业出版社 满68元赠书活动
精彩评论

基本信息

编辑推荐

您所购买的这本书的大部分版税,将捐赠给汶川地震灾区的父老乡亲!.
◆ Open Source 20大高手倾力巨献
◆ CSDN总裁蒋涛作序推荐..
◆ Open Source 一册在手 选型无忧...

内容简介回到顶部↑

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。此时,专家的经验就显得弥足珍贵了。
本书特邀多位国内技术社区专家,对当前开源技术领域流行的开发平台、Web框架、应用服务器、数据库、版本控制、项目管理、富客户端、面向服务架构和工作流等进行详尽地比较分析,期望结合他们多年的开发经验,为中高级技术人员技术选型提供必要的参考。

目录回到顶部↑

第1章 闲话开源社区篇
第2章 Web框架篇
 2.1 Struts
 2.2 Spring
 2.3 Seam
第3章 开源Web服务器
 3.1 Apache
 3.2 Lighttpd
 3.3 Nginx
第4章 应用服务器篇
 4.1 JBoss
 4.2 Geronimo
 4.3 JFox
第5章 开发平台篇(IDE)
 5.1 Eclipse
 5.2 NetBeans
第6章 动态语言篇
 6.1 Python
 6.2 Ruby
 6.3 Groovy

序言回到顶部↑

开源在中国——机会和挑战.
1999 年,Eric S. Raymond 在自由软件的范畴下提出了Open Source 开源软件的概念,并出版了《大教堂和集市》(The Cathedral & the Bazaar)一书,这是开源软件发展的标志事件。
近10 年过去了,开源软件已成为软件行业,特别是互联网行业最重要和发展最快的领域,著名开源项目网站SourceForge 在1999 年还只有数百个开源项目,到2008 年初,其开源项目数已经超过17 万个,几乎覆盖软件应用的所有领域。大部分产品和技术基于开源平台的Google 已成为世界上最成功的高科技公司。今天,从全球500 强企业到中小企业,还有绝大部分的软件公司都在使用开源产品构建自己的信息系统或产品。
为什么开源能取得如此大的成功?
第一:开源社区的协同模式改变和颠覆了软件业的工作方式,可以创造出高质量的软件产品。
Raymond 在《大教堂和集市》一书中有精彩的阐述。
第二:开源软件的商业模式也得到了验证,RedHat、MySQL、Asterisk 都是非常成功的开源公司。当然最重要的是,开源软件真正释放了软件开发人员的创造力和生产力,全世界有上百万的程序员在参与开源软件的产品开发。国际软件巨头也纷纷加入开源阵营,IBM 投资10 亿美元支持Linux,Sun 也斥巨资收购MySQL,开源在全球的发展成沛不可挡之势。
但实际上,中国的开源却是这样一副景象:社区冷,企业热,使用热,开发冷。
使用开源产品的公司和人员众多,但开源社区的发展并不顺利,真正参与开源产品开发和社区贡献的开发人员非常少。
原因是什么呢?《程序员》杂志社组织过专门的研讨,总结下来有多方面的原因:
1. 语言的障碍,阻碍了中国软件开发人员参与国际开源社区;
东西方文化的差异及对开源文化的了解不足;
经济上的快速发展带来的工作和生活压力;
中国软件开发发展的时间还不长,核心开发人员的积累还不够,缺乏开源关键人物;大学教育在开源领域严重不足,教师也缺乏了解。
开源在中国的发展意义重大:第一,开源软件集合了全世界软件技术的发展精华,可以让我们的开发人员和软件企业充分学习和吸收;第二,开源软件覆盖了软件应用各个领域,中国的软件企业可以在此基础上发展增值应用,只要遵守其商业规则,就能创造出商业价值;第三,软件的用户都更愿意自己用的系统是开源的,这样便于维护升级和系统整合。
开源给中国的软件产业提供了加入国际软件大潮的极好机会,事实上中国互联网的蓬勃发展也是基于开源的产品带来的成效。但更重要的是中国的软件开发人员能够参与开源社区和产品开发,打造中国开源社区的良性生态系统。
美国开源发达的一个重要原因是出版界(特别是O'Reilly 公司)出版了大量的开源图书,推进了开源技术的普及和发展。中国软件界如果有更多高质量的中文开源内容,就会有更多的人了解开源的技术和价值,就会有更多的开发人员参与开源的使用和开发,就会有企业采用开源的应用,反过来就会刺激更多的开发人员学习和参与开源。
所以,博文视点这次组织中国开源社区的多位专家策划《开源技术选型手册》是非常有意义的。
开源有着美丽的风景,但也非常庞杂,超过17 万个项目无所不包。《开源技术选型手册》是一本开源技术和产品的导航手册,本书的作者都是涉足开源多年的专家,他们分门别类地为广大读者介绍了19 类开源技术和产品,开源的最大魅力在于提供给软件开发人员自由选择和使用的权利,读者按图索骥就可以参与开源项目,参与和回馈是开源成功的关键。衷心希望作者的努力能帮助更多读者的参与。
开源在中国有很好的机会和前景,希望我们的开发人员和软件企业能把握机会,去迎接这样的挑战。

书摘回到顶部↑

第1章 闲话开源社区篇
 对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。每天,当他们坐在电脑前开始编程时,从所使用的Linux操作系统,到Eclipse集成开发环境,到编程所用的Java或Ruby、Python语言,“开源”烙印在每件工具身上。如果按照我们通常所说的,对待件事情“不仅要知其然,还要知其所以然”,那么我想很多开发人员在这个问题上应该是不合格的,而这也是本文所要着重解决的问题。本文试图从开源的历史、开源运动中相关的一些重量级人物,以及国内外的重要开源社区等方面展开讨论,对“开源”做简要分析。本文标题之所以加了“闲话”二字,初衷是因为开源话题庞杂,非几本专著所能阐述清楚,更不用说一篇小文了。本文很多地方都是点到为止,要深入了解相关信息的读者请借助Google和文末的参考资料、网站等自行挖掘。
  开源软件诞生小史
要谈开源,首先需要了解开源之前的世界是什么样子。在软件产业高速发展的背后,知识产权有着功不可没的作用。也就是有着它的保护,软件领域很快涌现出了像微软、IBM、Oracle、BEA等一大批知名软件公司,分析这些公司的特点,我们可以发现它们对其旗下的核心产品都有着占有权,也就是它们所生产的软件的源代码对外界来说是严格保密的,其所造成的后果就是在带给用户便利的同时也送来了诸多不便。举个例子来说,在使用这些代码非开源的软件时如果遇到问题,客户是没有办法通过自行检测代码来解决的,他们只能求助于产品提供商,而这一过程可能就会给客户带来难以估量的损失。另外我们也不难看出,对源代码的保密还带来了大量重复的劳动,阻碍了创新的脚步。
上面我们所提到的这种非开源的软件通常被我们称为“商业软件”。随着人们对软件的认识越来越深入,商业软件的垄断也引起了很多软件用户和计算机专家的不满。麻省理工学院在1984年率先发起了自由软件运动,而且成立了自由软件基金会。其代表人物是Richard Stallman,他在《为什么软件不应有所有者?》一文中提到,“一个软件并不是单纯的工具,一旦软件的编写者将其传播出去,就不单单是在提供‘工具’,而是在传播‘思想’”,同日寸,他也对现有的版权体系进行了批判。事情还不仅仅如此,Stallman还试图创造一种有别于传统的知识产权模式,避免垄断,加强软件技术交流与合作的软件开发模式。这种模式要求软件开发者开放源代码,允许任何使用者阅读源代码并可以进行修改,同时也不需要向软件开发者支付使用费。Stallman还表示用户之间批次拷贝软件不但不是盗版,还体现了人类天性的互助美德。对Stallman而言,自由是根本。
从用户角度来看,自由软件好处多多,但对于开发者或生产厂商而言,这不啻是一个噩耗。因为很多人会将自由软件理解成“免费”,针对这种情况,自由软件基金会在版权声明中明确强调“当提到自由软件时,我们指的是自由而不是价格……”。尽管如此,商业公司还是将这种模式视为一种威胁,有可能会导致他们无利可图。为了解除这种威胁,Stallman创造了GNU通用公共许可证,即GPL。GPL的基本意思是你可以任意拷贝和散发根据GPL许可授权的软件,并且你不能阻止他人也做同样的事情。另外,GPL还要求从GPL作品衍生出来的作品也必须同样遵循此条款的约束。由此可见,自由软件显然是违背商业信条的,这也导致了人们对自由软件越来越敬而远之。
在这个背景之下,1997年春天中的一天,自由软件社团中的一部分人,如Eric S.Raymond(《大教堂与集市》一文作者)等决定寻找另外一种可以赢得更多人认同的新模式,这也是今天和我们的开发生涯息息相关的开源软件。与GPL相比,开源软件的定义允许更大的授权自由,特别是当软件中混合了商业软件和开源软件时,开源软件被允许在这些软件基础上做更自由的创作。
  开源软件定义
  下面我们简单地了解一下关于开源软件的定义,官方的定义版本写得很全面,这里我们仅仅挑选一些重要的条款来解释。开源软件需要遵循的首要标准就是要能够“自由地重新发行”,被认证为开源软件的产品不能限制任何参与者销售,也不能限制将该软件作为其他集合软件的一部分发行,也不能要求使用该开源软件的人支付版税或其他费用。从这一点可以看出开源软件较自由软件的概念更为自由。
对于开源软件中“源代码”的定义,是指在提供软件的同时也要提供程序源代码,也必须允许其他人对代码进行编辑或修改。如果发行软件时没有附带源代码,那么源代码必须能够很容易且低成本地获得,比如可以从网络上免费下载等。为了便于程序员阅读源代码,它们必须要以比较友好的格式下载,以便容易地编辑。那些故意写得很模糊的源代码是不被允许的。从上面这一点来看,“开源”更大意义上来说是一种文化上的分享。
其他限制条款,还包括开源软件必须允许修改和衍生作品,并且必须允许他们在原软件的许可证下进行发行。而且开源软件也不能限制任何人将程序使用于任何目的,包括不能限制程序用于商业用途等。也许正是这一点,让包括IBM、BEA、Oracle,甚至连微软在内的公司开始染指开源软件领域的原因吧。
  ……
评论交流

共有29人开贴评论  36人参与评论  25人参与打分 查看

9人
 36%
用户平均打分
我要写评论 help如何参与评论和打分
3人
 12%
7人
 28%
0人
 0%
6人
 24%

bvcat
三级评论员
精彩书评
评价等级:  
发表于:2008-6-13 11:56:00
记得博文视点出版公司最近出过一本书,名为《编程之美》,很是畅销。但是在我撰写《开源技术选型手册》的编写手记的时候,首先浮在脑海中的词汇是“遗憾之美”。前几天Lisa(本书责任编辑)告诉我,书稿终于拿去出片了,那一时刻我能感受到在电脑的那端,她肯定也在长舒一口气,虽然也许还有些忐忑。然后我们又聊起书中的一些遗憾,比如可能会有某些地方标点符号不正确,有些句子可能不够顺畅等等。这种感觉,我在从前做杂志期间经常有过,自己感觉非常费心费力,本认为非常完美的东西,在印刷之后常会又找到这样或者那样的Bug。对于类似的问题,我们可以无限小地避免,但要完全消灭,可能就违背了“万事无绝对”的“真理”,我就开玩笑地告诉Lisa——遗憾有时也是很美的,相信我们下次会做的更好。

这也许有点为自己开脱的意思,可是回想整本书从策划到撰写到成书的经过,这种感觉逐渐为“平和”所代替。想起在策划之初,周筠老师几次找到我,再拉上孟岩和方舟,进行沟通。先是总结这本书的前身《开源大本营》中的经验和教训,然后列出值得继续发扬和需要避免的地方,有的放矢地开始第二轮的迭代。而后将能联系上,可能会参与本书写作的作者拉到五道口蓝旗营的万圣书园开始头脑风暴。凯峰、李剑、玉宝等人先根据讨论的图书结构撰写样章,然后大家以此为靶子进行“攻击”和完善,最后总结出一个相对可行的框架结构,这也是现在本书的骨骼主体。单是万圣书园的几次聚会,我想就令几多参与人员回味的了,另外,要知道,有两次博文的朋友们还是专程从武汉赶到北京来参加的……还记得当时方舟为了让这本书的版式更加完美,还专门买了几本日本同行出版的砖头书,然后我们两个猫在丽都饭店附近的雕刻时光进行研究,详谈甚乐。因为种种原因,最终这些版式可能没有最终采用,但这个“遗憾”不也是一个很美好的记忆吗?

如果要列出这半年来值得回忆的事情,我想躺在摇椅上摇上几宿也不一定能叙述完毕,包括责任编辑Lisa的耐心催促,包括每个作者对自己作品的精益求精,包括对本书的针对性宣传,包括后期制作过程中的各种误会,包括封面的设计,包括作者之一袁峰前些天发邮件给我说,因为父亲的去世使他没有更多精力将稿件写到最佳,很是抱歉等等。尤其值得一提的是,在这次汶川地震灾难面前,我们的所有作者表现出了自己诚挚的关注和爱心,一致同意将自己的稿费全部捐献给灾区,在本书的文前页每人还送上一句祝福,向灾区的人民表达问候。从这些等等一切的“琐事”中,我想每一个参与其中的人都会收获到自己的独特感受。

从一开始,《开源技术选型手册》这本书的定位就是面向项目经理、技术经理、高级软件工程师包括CTO等的,我们将每个领域的专家汇集在一起,将他们的经验和智慧汇集在一起,力求在尽量少的篇幅内给这些技术选型决策者提供最有价值的参考。本书是多人协作完成,在写作过程中,也许会有这样或者那样的偏差,如果读者有所体察和发现,我们都欢迎大家不吝赐教。因为如果还有下次的话,这本书在反馈的基础之上肯定会做更新,肯定会更加完美。我想让后来者看到更完美的作品对每个作者和读者都是理应担当的责任,如果这也算是一种“责任”的话。

每一个作品,哪怕是不完美的作品的背后都蕴含了无数人的努力,《开源技术选型手册》也是一样。不做书不知道做书难,这次的经历让我实实在在感受到了做书人的艰辛,借写手记的机会也向那些所有从事出版行业的“苦命人”们表示敬意!



作者:霍泰稳
回复 ( 2条评论-- 点击查看讨论 )
您觉得呢? 送鲜花 (得2支)  扔鸡蛋 (得0个)

hao___feng
一级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2010-2-25 9:54:00
书还行,对流行的开源框架做了简单的优缺点比较
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

hbdrawn
一级评论员
该会员在china-pub购买过此书
  
发表于:2009-8-17 19:52:00
一本不错的书,值得一看
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

liuyifengqing
二级评论员
  
发表于:2009-8-12 14:51:00
很值得一看,我是去年看的同事的,很好,希望能再出第二版,来看了好几次了还是没有,欢迎大家来群讨论 68033599
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

hbdrawn
一级评论员
该会员在china-pub购买过此书
  
发表于:2009-8-5 10:15:00
还没收到书呢,怎么评啊
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)
我要写评论
查看所有评论交流(共29条)