开源软件之道


请输入要查询的图书:

可以输入图书全称,关键词或ISBN号

开源软件之道

ISBN: 9787121104831

出版社: 电子工业出版社

出版年: 2010 年4月

页数: 266

定价: 38.00元

装帧: 16开

内容简介


本书将开源运动的前世今生和游戏规则完整地呈现给读者。第一篇帮助大家认识开源,包括其定义、历史、现状、优势、使用成本、商业模型等。第二篇探讨使用开源软件时需要注意的各项具体事宜,特别是与知识产权相关的方面,例如软件著作权、许可证等,然后分享搜索所需开源软件的技巧,并罗列了一些流行的开源软件。第三篇全面介绍如何参与开源社区的工作,引导大家融入开源社区从而探析各个开源软件的技术精髓,深入认识开源文化,提升个人在技术、交流等各方面的能力,希望能帮助提高国内开发人员的整体水平——这对于中国软件行业的发展善莫大焉!

本书适合对开源软件感兴趣的人员、IT从业人员、致力于开源健康发展的人员阅读和参考。

目录

第1篇 了解开源软件

第1章 开源软件概述 2

1.1 开源软件的理解 2

1.2 开源软件的定义 3

1.3 开源软件定义的意义 5

1.4 开源软件和其他类型软件的比较 6

第2章 开源软件的历史与未来 9

2.1 开源软件的历史 9

2.2 开源运动背后的理想与现实 12

2.2.1 理想主义的兴起 12

2.2.2 技术精英的推动 13

2.2.3 现实业界的需求 14

2.3 开源社区的壮大 15

2.4 开源软件的领袖 16

2.5 开源软件的未来 17

第3章 开源软件的好处 19

3.1 高质量 19

3.2 零许可证费 21

3.3 开放和自由 22

3.4 灵活可定制 22

.3.5 公开透明 23

3.6 良好的学习平台 23

第4章 开源软件的成本 25

4.1 部署和迁移成本 25

4.2 人员和培训成本 26

4.3 管理维护和技术支持成本 27

4.4 风险控制成本 28

第2篇 使用开源软件

第5章 正确使用开源软件 32

5.1 管理体制 32

5.2 法律风险 33

5.2.1 法律因素之著作权 34

5.2.2 法律因素之许可证 35

5.2.3 法律因素之专利 36

5.2.4 问题解析 37

5.2.5 验证著作权,正本清源 38

5.2.6 调查专利,借力打力 40

5.2.7 解读许可证,明察秋毫 41

5.3 成熟度 56

5.3.1 优秀的领导者 57

5.3.2 差异化的开发者社区 57

5.3.3 庞大的优质用户群 58

5.3.4 健康的项目“脉动” 58

5.3.5 健全的安全补丁体制 59

5.3.6 较完善的文档 60

5.4 服务 60

5.5 寻找合适的开源软件 61

第6章 开源软件之语言和平台 63

6.1 Harmony 63

6.2 Android 66

6.3 Python 69

6.4 Ruby 72

6.5 PHP 74

6.6 Groovy 76

6.7 Perl 78

6.8 Flex 80

6.9 OpenLaszlo 82

第7章 开源软件之框架和库 84

7.1 Spring 84

7.2 Struts 87

7.3 JBoss Seam 89

7.4 Equinox 91

7.5 Hibernate 93

7.6 iBATIS 95

7.7 Lucene 97

7.8 Webkit 99

第8章 开源软件之服务器软件 101

8.1 Apache HTTP服务器 101

8.2 Tomcat 103

8.3 Jetty 104

8.4 Geronimo 105

8.5 JBoss 108

8.6 GlassFish 109

8.7 MySQL 111

8.8 PostgreSQL 114

8.9 Derby 116

8.10 FileZilla Server 118

第9章 开源软件之开发工具 120

9.1 Eclipse 120

9.2 NetBeans 122

9.3 Apache Ant 124

9.4 Apache Maven 126

9.5 CVS 128

9.6 Subversion 130

9.7 GIT 131

9.8 Bugzilla 133

9.9 JUnit 135

9.10 TestNG 137

第10章 开源软件之桌面应用 139

10.1 GNOME 139

10.2 OpenOffice.org 142

10.3 Emacs 145

10.4 Firefox 147

10.5 Thunderbird 150

10.6 GIMP 151

10.7 FreeMind 152

10.8 7-Zip 154

第3篇 参与开源项目

第11章 开源社区的基础设施 158

11.1 基础设施 158

11.1.1 主页(Home Page) 158

11.1.2 代码库(Code Repository) 158

11.1.3 邮件列表(Mailing List) 159

11.1.4 缺陷追踪系统(Bug Tracking System) 160

11.1.5 Wiki 161

11.1.6 其他 161

11.2 开源项目托管网站 162

第12章 开源组织和社区 165

12.1 Apache软件基金会 165

12.1.1 Apache的历史 165

12.1.2 Apache组织结构 166

12.1.3 Apache开发模式 169

12.1.4 Apache法律问题处理 172

12.1.5 Apache项目简介 174

12.1.6 Apache运营模式 176

12.2 自由软件基金会 177

12.2.1 FSF的历史 177

12.2.2 FSF的目标 178

12.2.3 FSF组织结构 179

12.2.4 GNU工程 180

12.3 Linux Kernel社区 181

12.3.1 Linux Kernel的历史 181

12.3.2 Linux Kernel社区文化和价值观 185

12.3.3 Linux Kernel开发模式 186

12.3.4 Linux Kernel运营模式 188

12.4 Eclipse社区 189

12.4.1 Eclipse的历史 189

12.4.2 Eclipse的发展 190

12.4.3 Eclipse组织结构 192

12.4.4 Eclipse项目简介 193

12.4.5 Eclipse运营模式 196

12.4.6 Eclipse Con大会 196

12.5 Mozilla社区 197

12.5.1 Mozilla的历史 197

12.5.2 Mozilla组织结构 198

12.5.3 Mozilla开发模式 198

12.6 Linux相关社区 200

12.6.1 Archlinux社区 200

第13章 商业模式与实例 203

13.1 许可证的决定性 203

13.2 商业模式实例 205

13.2.1 增值产品 205

13.2.2 技术支持 207

13.2.3 咨询 211

13.2.4 广告模式 212

13.2.5 软硬件结合 213

13.2.6 双重授权 215

13.2.7 社区模式 216

13.2.8 Ubuntu“模式” 216

第14章 参与开源社区 219

14.1 开始加入 219

14.2 社区讨论与工作 220

14.2.1 参与社区讨论 220

14.2.2 参与社区工作 221

14.3 提升自己 225

14.4 礼仪规范 227

14.4.1 撰写邮件的礼仪和规范 227

14.4.2 邮件列表的礼仪和规范 228

14.4.3 发言的礼仪 231

14.5 开源开发的最佳实践 235

14.6 企业参与开源 238

14.6.1 需求 238

14.6.2 风险 238

14.6.3 企业参与开源的策略 239

第15章 开创事业 242

15.1 项目启动与计划 242

15.2 选择正确的许可证 247

15.3 基础设施构建 249

15.3.1 SourceForge托管开源项目基础设施构建 249

15.3.2 Google Code托管开源项目基础设施构建 259

15.4 宣传与坚持 263

作者简介


蔡俊杰,IBM中国开发中心开源Java开发架构师,带领团队参与在Apache Harmony和Apache Geronimo等开源社区中。历任项目经理、部门经理。目前专注于Java平台技术和云计算,同时对用户体验比较感兴趣。

吕晶,Apache Harmony PMC(Project Management Committee)成员,就职于IBM中国开发中心Harmony开发团队,Open Source爱好者和宣传者,目前比较关心的技术是Java、Linux、网络服务和集群计算。对Apache社区有近三年的持续贡献。

连理,毕业于复旦大学,IBM中国开发中心新兴技术学院架构师。曾参于DITA open toolkit和IBM Eclipse Help System等与开源相关的软件开发项目.历任项目经理.部门经理。对开源项目的管理.开发有三年的实践经验.

邱小侠,IBM中国软件开发中心软件工程师,毕业于南京大学,现在IBM Harmony项目从事J2SE类库开发的工作,他还是Apache Harmony项目的commftter.

吴玥颢,Harmony项目经理,Apache Harmony PMC(Project Management Committee)成员,共创软件联盟2008开源软件杰出贡献奖获得者,具有多年开源软件领域第一线的工作经验.

目录


第1篇 了解开源软件第1章 开源软件概述 1.1 开源软件的理解 1.2 开源软件的定义 1.3 开源软件定义的意义 1.4 开源软件和其他类型软件的比较第2章 开源软件的历史与未来 2.1 开源软件的历史 2.2 开源运动背后的理想与现实  2.2.1 理想主义的兴起  2.2.2 技术精英的推动  2.2.3 现实业界的需求 2.3 开源社区的壮大 2.4 开源软件的领袖 2.5 开源软件的未来第3章 开源软件的好处 3.1 高质量 3.2 零许可证费 3.3 开放和自由 3.4 灵活可定制 3.5 公开透明 3.6 良好的学习平台第4章 开源软件的成本 4.1 部署和迁移成本 4.2 人员和培训成本 4.3 管理维护和技术支持成本 4.4 风险控制成本 第2篇 使用开源软件第5章 正确使用开源软件 5.1 管理体制 5.2 法律风险  5.2.1 法律因素之著作权  5.2.2 法律因素之许可证  5.2.3 法律因素之专利  5.2.4 问题解析  5.2.5 验证著作权,正本清源  5.2.6 调查专利,借力打力  5.2.7 解读许可证,明察秋毫 5.3 成熟度  5.3.1 优秀的领导者  5.3.2 差异化的开发者社区  5.3.3 庞大的优质用户群  5.3.4 健康的项目“脉动”  5.3.5 健全的安全补丁体制  5.3.6 较完善的文档 5.4 服务 5.5 寻找合适的开源软件第6章 开源软件之语言和平台 6.1 Harmony 6.2 Android 6.3 Python 6.4 Ruby 6.5 PHP 6.6 Groovy 6.7 Perl 6.8 Flex 6.9 OpenLaszlo第7章 开源软件之框架和库 7.1 Spring 7.2 Struts 7.3 JBoss Seam 7.4 Equinox 7.5 Hibernate 7.6 iBATIS 7.7 Lucene 7.8 Webkit第8章 开源软件之服务器软件 8.1 Apache HTTP服务器 8.2 Tomcat 8.3 Jetty 8.4 Geronimo 8.5 JBoss 8.6 GlassFish 8.7 MySQL 8.8 PostgreSQL 8.9 Derby 8.10 FileZilla Server第9章 开源软件之开发工具 9.1 Eclipse 9.2 NetBeans 9.3 Apache Ant 9.4 Apache Maven 9.5 CVS 9.6 Subversion 9.7 GIT 9.8 Bugzilla 9.9 JUnit 9.10 TestNG第10章 开源软件之桌面应用 10.1 GNOME 10.2 OpenOffice.org 10.3 Emacs 10.4 Firefox 10.5 Thunderbird 10.6 GIMP 10.7 FreeMind 10.8 -Zip 第3篇 参与开源项目第11章 开源社区的基础设施 11.1 基础设施  11.1.1 主页(Home Page)  11.1.2 代码库(Code Repository)  11.1.3 邮件列表(Mailing List)  11.1.4 缺陷追踪系统(Bug Tracking System)  11.1.5 Wiki  11.1.6 其他 11.2 开源项目托管网站第12章 开源组织和社区 12.1 Apache软件基金会  12.1.1 Apache的历史  12.1.2 Apache组织结构  12.1.3 Apache开发模式  12.1.4 Apache法律问题处理  12.1.5 Apache项目简介  12.1.6 Apache运营模式 12.2 自由软件基金会  12.2.1 FSF的历史  12.2.2 FSF的目标  12.2.3 FSF组织结构  12.2.4 GNU工程 12.3 Linux Kernel社区  12.3.1 Linux Kernel的历史  12.3.2 Linux Kernel社区文化和价值观  12.3.3 Linux Kernel开发模式  12.3.4 Linux Kernel运营模式 12.4 Eclipse社区  12.4.1 Eclipse的历史  12.4.2 Eclipse的发展  12.4.3 Eclipse组织结构  12.4.4 Eclipse项目简介  12.4.5 Eclipse运营模式  12.4.6 Eclipse Con大会 12.5 Mozilla社区  12.5.1 Mozilla的历史  12.5.2 Mozilla组织结构  12.5.3 Mozilla开发模式 12.6 Linux相关社区  12.6.1 Archlinux社区第13章 商业模式与实例 13.1 许可证的决定性 13.2 商业模式实例  13.2.1 增值产品  13.2.2 技术支持  13.2.3 咨询  13.2.4 广告模式  13.2.5 软硬件结合  13.2.6 双重授权  13.2.7 社区模式  13.2.8 Ubuntu“模式”第14章 参与开源社区 14.1 开始加入 14.2 社区讨论与工作  14.2.1 参与社区讨论  14.2.2 参与社区工作 14.3 提升自己 14.4 礼仪规范  14.4.1 撰写邮件的礼仪和规范  14.4.2 邮件列表的礼仪和规范  14.4.3 发言的礼仪 14.5 开源开发的最佳实践 14.6 企业参与开源  14.6.1 需求  14.6.2 风险  14.6.3 企业参与开源的策略第15章 开创事业 15.1 项目启动与计划 15.2 选择正确的许可证 15.3 基础设施构建  15.3.1 SourceForge托管开源项目基础设施构建  15.3.2 Google Code托管开源项目基础设施构建 15.4 宣传与坚持
关键词:开源 软件