基于Eclipse环境的企业应用开发

基于Eclipse环境的企业应用开发"

作者:万辉、张鑫金、钟子龙
ISBN:9787302184171
定价:¥30
字数:千字
页数:
出版时间:2008.09.01
开本:
版次:1-1
装帧:
出版社:清华大学出版社
简介

本书在全面介绍Eclipse开发平台的基础上着重介绍在Eclipse平台下进行企业开发的各项最新技术。内容涵盖了基于Eclipse环境的企业开发的各个方面,是一本学习Eclipse开发技术的手册。

书中介绍了基于Eclipse环境的企业开发,并遵循软件开发生命周期的顺序,逐一讲解使用Eclipse开发各类企业应用程序所需的知识,包括Java体系结构、Eclipse与企业开发、配置管理、需求分析、面向对象的分析和设计、测试、应用程序的编译和部署、缺陷跟踪管理系统和一些常用的项目管理工具。

本书内容广泛,围绕Eclipse,涉及团队开发插件、配置管理工具CVS和Subversion、需求分析和面向对象分析/设计工具EclipseUML、Java开发、C/C++开发、PHP开发、Java EE开发、单元测试、应用程序编译和部署工具Ant、持续集成工具CruiseControl、缺陷跟踪管理系统Bugzilla、CheckStyle源代码格式管理工具和Maven项目管理工具等多种知识。

本书适合作为初、中级读者的指导书,也适合作为有一定Eclipse开发经验读者的进阶书籍,还可以用作各类院校相关专业的教材以及Eclipse开发培训班的教材。

前言

前    言

Eclipse作为当前主流开发平台之一,版本从最初的2.1、3.0、3.1、3.2、3.3到最近的3.4,基本上每年都有一个主要的发布版本,也成为Eclipse不断发展的标志。2008年6月25日,Eclipse基金会宣布发布了代号为Ganymede的Eclipse年度发布。Eclipse Ganymede发行版中包括23个项目,Eclipse已成为一个优秀的开发平台。

Eclipse最初设计用于Java IDE,但后来Eclipse并未局限于Java IDE,最新的Ganymede支持Java EE、C/C++、插件、建模(MDT)、报表开发等多项功能。

为了帮助更多的企业软件开发人员学习Eclipse开发平台,作者精心编著了本书。本书从Java体系结构讲起,遵循软件开发生命周期,逐一介绍使用Eclipse开发各类企业应用程序所需的知识,包括Java体系结构、Eclipse与企业开发、配置管理、需求分析、面向对象的分析和设计、测试、应用程序的编译和部署、缺陷跟踪管理系统和一些常用的项目管理工具。

本书在内容的编排和目录组织上都很讲究,力争让读者能够快速掌握Eclipse开发平台的开发技巧及相应的技术。在讲解具体知识的时候,语言简单易懂,告诉读者如何实现特定的功能,让读者在实际操作中熟悉软件的开发技术。

1.本书内容

第1章 介绍Java体系结构的一些基本知识,包括Java系统的历史和发展,Java主要应用技术和特点、Java EE介绍和开发,最后介绍Java发展趋势和新技术。

第2章 介绍Eclipse与企业应用开发的基本知识,由于本书都是围绕着软件生命周期展开,所以该章将在介绍Eclipse开发平台的基础上,首先介绍软件开发生命周期,然后介绍软件开发周期的主要阶段(需求分析、面向对象的分析和设计、实现和测试),接着介绍Eclipse下的企业开发基本知识。

第3章 介绍Eclipse下的团队开发和配置管理的基础,其中既包括Eclipse对团队开发的支持,也介绍常见的团队开发插件。在该章的后半部分则对配置管理的基本概念和配置管理工具进行介绍。

第4章 介绍Eclipse下的CVS配置管理。首先介绍CVS的基本概念、CVS服务器在Windows下和Linux下的安装和Eclipse CVS客户端概览;然后介绍Eclipse CVS基本操作(导入项目、检出项目、检入等);随后介绍Eclipse CVS高级操作(创建分支、创建版本、比较、合并、替换等);最后介绍一些其他操作(修改文件属性、添加文件到忽略列表)。

第5章 介绍Eclipse下的Subversion配置管理。首先介绍Subversion的基本概念、Subversion服务器在Windows下和Linux下的安装及Subclipse客户端安装和概览;然后介绍Subclipse的基本操作(导入项目、检出项目、检入以及常见Subversion任务等);随后介绍Subclipse的高级操作(创建分支、创建版本、比较、合并、替换等),最后介绍Subclipse的一些其他操作(修改文件属性、添加文件到忽略列表、复制、加锁、解锁、导出等功能)。

第6章 介绍Eclipse下的需求分析。该章首先介绍需求分析的一般内容,然后介绍UML,随后详细地介绍Eclipse下的常用需求/分析/设计工具,最后介绍EclipseUML的安装和GEF以及使用EclipseUML创建一个用例图。

第7章 主要介绍面向对象的分析和设计。该章首先介绍面向对象的分析和设计概要,然后对使用EclipseUML创建类图、序列图、活动图做出详细的介绍。

第8章 介绍Eclipse下的代码实现。该章首先介绍Eclipse下Java开发的基础知识,然后介绍插件开发的基本知识,随后介绍其他语言开发(C/C++开发和PHP开发),最后介绍Java EE开发和常见Java EE开发工具。

第9章 介绍Eclipse下的单元测试。该章首先介绍单元测试的基本概念,然后介绍JUnit单元测试框架,随后介绍单元测试的自动化,最后介绍“冒烟测试”。

第10章  介绍应用程序的编译与部署。该章首先介绍编译和部署工具Ant,然后介绍自动编译和增量编译的基础概念和配置管理,以及集成单元测试的过程,随后介绍自动部署的一些基本方法,最后介绍持续集成的基本概念和持续集成工具CruiseControl的使用方法和样例。

第11章  介绍Eclipse下的缺陷跟踪管理系统。该章首先介绍缺陷跟踪管理系统的基本知识,然后介绍缺陷跟踪管理系统与配置管理系统的配合使用,最后介绍缺陷跟踪管理系统与IDE环境的配合,并且给出Eclipse Bugzilla和Mylyn插件的使用方法和样例。

第12章  介绍Eclipse下的项目管理。该章首先介绍项目管理的一些基本概念,然后介绍Eclipse下的一些项目管理工具,随后介绍使用CheckStyle工具进行源代码格式管理的知识,最后介绍Maven工具以及使用Maven工具进行项目管理的知识。

2.本书特点

(1) 图文并茂。书中每介绍一个知识点都会给出一个详细的步骤和示意图,并且提供一些技巧或者一些注意事项。

(2) 结构合理。书中为广大的Eclipse初学者提供Eclipse平台的基本介绍。没有Eclipse平台开发经验的读者可以按顺序阅读本书,获得系统全面的介绍。如果已经具备了初级的Eclipse Java IDE的使用经验,则可以从第3章开始阅读。

(3) 内容新颖。本书在全面介绍Eclipse开发平台的基础上着重介绍Eclipse平台下进行企业开发的各项最新技术。在Eclipse的版本选择上,采用Eclipse 3.3.1,而且绝大多数开发工具也能运行在Eclipse 3.4上。

3.读者对象

本书主要适合下列人员阅读和学习:Java以及Java EE开发人员、插件开发人员、其他开发平台转向Eclipse开发平台的转型人员、需求分析人员和设计人员、配置管理和项目管理人员、C/C++应用程序开发人员、PHP应用开发人员、正在做毕业设计的学生。此外,也可以作为大学/大专/中专的教材,或者社会培训教材。

本书作者分工如下:第1~9章和第12章由万辉编写,第10章和第11章由张鑫金编写。全书由万辉统稿。

本书是作者多年学习和从事项目开发的经验总结,由于作者水平有限,书中的不足之处在所难免,敬请读者指正。

目录

目    录

第一篇  Eclipse企业开发概要

 

第1章  Java体系结构介绍 1

1.1  Java系统的历史和发展 1

1.1.1  Java的来源 1

1.1.2  Java的发展 2

1.2  主要应用技术及特点 5

1.2.1  Java SE的主要应用技术 5

1.2.2  Java ME的主要应用技术 7

1.2.3  Java EE的主要应用技术 8

1.3  Java EE(J2EE) 8

1.3.1  Java EE多层体系结构 8

1.3.2  Java EE容器 9

1.3.3  Web Service开发支持 9

1.3.4  Java EE应用中的主要技术 10

1.4  Java发展趋势以及新技术 13

1.4.1  可用性 13

1.4.2  扩展性 13

1.4.3  开源性 14

1.4.4  Linux与Java 15

第2章  Eclipse与企业应用开发 16

2.1  Eclipse开发平台简介 16

2.1.1  Eclipse开发平台简介 16

2.1.2  Eclipse项目简介 16

2.1.3  Eclipse界面简介 17

2.1.4  Eclipse插件架构简介 24

2.2  软件开发生命周期 25

2.2.1  软件开发生命周期概述 25

2.2.2  软件开发生命周期模型 25

2.2.3  软件开发生命周期模型的选择 28

2.3  Eclipse下的配置管理概述 29

2.3.1  配置管理概要 29

2.3.2  配置管理的功能 29

2.3.3  常见的配置管理系统 30

2.4  Eclipse下的需求、分析和设计概述 30

2.4.1  需求 30

2.4.2  分析 30

2.4.3  设计 30

2.5  Eclipse下的测试、部署概述 31

2.5.1  测试 31

2.5.2  部署 31

2.6  Eclipse与项目管理 31

2.6.1  项目管理概述 31

2.6.2  项目管理工具 32

2.7  Eclipse下的企业开发概述 32

2.7.1  Java EE开发 32

2.7.2  Java开发 33

2.7.3  RCP/插件开发 33

2.7.4  建模开发 33

2.7.5  报表开发 34

2.7.6  其他语言开发 35

 

第二篇  配置管理基础

 

第3章  Eclipse团队开发和配置管理 36

3.1  Eclipse团队开发框架 36

3.1.1  Eclipse团队开发框架概述 36

3.1.2  本地历史(Local History)功能 37

3.1.3  代码补丁功能 38

3.1.4  团队同步透视图 39

3.2  常见的团队开发插件 41

3.2.1  Eclipse内置CVS插件 41

3.2.2  Subversion插件 41

3.2.3  ClearCase插件 42

3.2.4  VSS插件 42

3.3  软件配置管理 43

3.3.1  软件配置管理 43

3.3.2  软件配置管理的主要内容 44

3.4  主流配置管理系统的比较和选择 45

3.4.1  特性比较 46

3.4.2  费用比较 47

3.4.3  综合比较 48

第4章  Eclipse下的CVS配置管理 49

4.1  CVS的基本概念 49

4.1.1  CVS概述 49

4.1.2  CVS仓库 49

4.1.3  CVS客户端 50

4.1.4  CVS基本开发流程 51

4.2  CVS服务器的安装和管理 52

4.2.1  Windows下CVSNT服务器

的安装和管理 52

4.2.2  Linux下CVS服务器的安装

和管理 57

4.3  Eclipse CVS客户端概述 60

4.3.1  CVS控制台 60

4.3.2  CVS仓库浏览透视图 61

4.4  Eclipse CVS的基本操作 66

4.4.1  导入项目到CVS仓库 67

4.4.2  模块检出 71

4.4.3  添加/删除/修改 77

4.4.4  更新 78

4.4.5  检入(提交) 78

4.4.6  向已有CVS项目导入 80

4.5  Eclipse CVS高级操作 80

4.5.1  创建分支 80

4.5.2  创建版本 82

4.5.3  切换分支或者版本 82

4.5.4  比较 83

4.5.5  替换 83

4.5.6  合并 84

4.6  Eclipse CVS其他操作 84

4.6.1  修改文件文本/二进制属性 84

4.6.2  把文件添加到忽略列表 86

第5章  Eclipse下的Subversion配置

管理 87

5.1  Subversion的基本概念 87

5.1.1  Subversion的历史 87

5.1.2  Subversion的特性 87

5.2  Subversion服务端的安装 89

5.2.1  Subversion服务端在Windows

下的安装 89

5.2.2  Subversion在Linux下的安装 94

5.3  Eclipse客户端Subclipse的安装 96

5.3.1  Subversion的客户端 96

5.3.2  Eclipse客户端Subclipse的

在线更新安装 96

5.3.3  Subclipse批量安装 101

5.4  Subclipse概览 101

5.4.1  SVN控制台 101

5.4.2  SVN仓库浏览透视图 102

5.5  Subclipse的基本操作 106

5.5.1  创建一个Subversion

仓库位置 106

5.5.2  导入项目到SVN仓库 107

5.5.3  检出SVN项目到本地 111

5.5.4  SVN任务 112

5.6  Subclipse的高级操作 116

5.6.1  创建标签/分支 116

5.6.2  切换到其他标签/分支 117

5.6.3  配置标签/分支 118

5.6.4  显示历史记录 118

5.6.5  合并 119

5.7  Subversion的其他操作 120

5.7.1  设置属性/显示属性 120

5.7.2  加锁/解锁 123

5.7.3  创建/应用补丁 124

5.7.4  把文件添加到忽略列表 124

5.7.5  复制 124

5.7.6  导出 125

5.7.7  整理 125

 

第三篇  需求分析、面向对象分析设计和实现

 

第6章  Eclipse下的需求分析 126

6.1  需求阶段概述 126

6.1.1  需求分析的重要性 126

6.1.2  需求层次 127

6.1.3  需求分析过程 127

6.2  UML概述 128

6.2.1  UML的历史 128

6.2.2  UML结构图 129

6.2.3  UML行为图 131

6.2.4  统一过程与用例驱动的

需求分析 132

6.2.5  模型驱动架构(MDA) 133

6.3  Eclipse下的需求分析/设计工具

和EclipseUML安装 133

6.3.1  IBM Rational软件交付平台 133

6.3.2  Borland Together Architect 134

6.3.3  Omondo EclipseUML概览 135

6.4  EclipseUML安装和GEF 135

6.4.1  EclipseUML安装 135

6.4.2  图形编辑器 139

6.5  使用EclipseUML创建用例图 141

6.5.1  创建用例图编辑器 141

6.5.2  创建参与者 143

6.5.3  创建用例 143

6.5.4  创建关联 144

第7章  Eclipse下的面向对象

分析和设计 146

7.1  面向对象分析概述 146

7.1.1  面向对象分析概要 146

7.1.2  面向对象分析流程 147

7.2  面向对象设计概述 147

7.2.1  面向对象设计概述 147

7.2.2  面向对象设计原则 147

7.2.3  设计模式 149

7.3  使用EclipseUML创建类图 149

7.3.1  创建类图图形编辑器 150

7.3.2  创建类图 152

7.3.3  添加属性 153

7.3.4  添加方法 155

7.3.5  定义类之间的关系 156

7.4  使用EclipseUML创建序列图 157

7.4.1  创建序列图图形编辑器 157

7.4.2  创建参与者 159

7.4.3  添加特性 160

7.4.4  添加消息 161

7.5  使用EclipseUML创建活动图 162

7.5.1  创建活动图图形编辑器 162

7.5.2  创建活动 164

7.5.3  添加开始点和结束点 165

7.5.4  添加转变 166

7.6  使用EclipseUML创建协作图 167

7.6.1  创建协作图图形编辑器 168

7.6.2  创建参与者 170

7.6.3  添加对象 170

7.6.4  添加消息 171

第8章  Eclipse下的代码实现 173

8.1  Java代码开发 173

8.1.1  JDT简介 173

8.1.2  JDT概览 173

8.1.3  JDT基本功能 174

8.2  插件开发 179

8.2.1  创建一个简单的插件 179

8.2.2  插件开发环境简介 181

8.3  其他语言开发 182

8.3.1  使用C++语言开发 182

8.3.2  进行PHP开发 188

8.4  Java EE开发 193

8.4.1  Java EE开发工具简介 193

8.4.2  J2EE工具之间的比较和选择 196

8.4.3  JBoss IDE for Eclipse的

安装和使用 196

 

第四篇  测试、部署和项目管理

 

第9章  Eclipse下的单元测试 202

9.1  单元测试概述 202

9.1.1  极限编程 202

9.1.2  测试驱动开发(TDD) 204

9.2  JUnit单元测试框架 205

9.2.1  JUnit简介 205

9.2.2  JUnit测试用例 207

9.2.3  JUnit测试套件 210

9.2.4  JUnit 4.x的新特性 212

9.3  单元测试自动化 212

9.3.1  测试集成简介 213

9.3.2  脚本 213

9.3.3  Ant工具 214

9.4  冒烟测试 215

9.4.1  冒烟测试简介 215

9.4.2  每日构建+冒烟测试的优点 216

9.4.3  使用每日构建+冒烟测试 217

第10章  应用程序的编译与部署 218

10.1  编译与部署工具Ant简介 218

10.1.1  Ant概述 218

10.1.2  Ant的基本概念 219

10.1.3  在Eclipse中使用Ant 221

10.2  自动编译与增量编译概述 224

10.3  自动编译与配置管理 225

10.3.1  Ant CVS任务简介 225

10.3.2  使用Ant检出(Checkout)

CVS仓库 226

10.3.3  使用Ant更新检出(Update)

CVS仓库 226

10.4  集成单元测试的构建过程 226

10.5  如何实现自动部署 228

10.5.1  本地自动部署方式 228

10.5.2  使用Ant进行远程部署 230

10.6  持续集成 231

10.6.1  持续集成概述 231

10.6.2  持续集成工具

CruiseControl 231

10.6.3  CruiseControl

持续集成示例 232

第11章  Eclipse与缺陷跟踪管理 235

11.1  缺陷跟踪管理系统概述 235

11.1.1  常用的缺陷管理系统 235

11.1.2  Bugzilla在Linux下的安装 236

11.2  缺陷跟踪与配置管理结合 239

11.2.1  SCMBug的安装 240

11.2.2  SCMBug的配置和使用 240

11.3  缺陷跟踪与IDE环境的配合 242

11.3.1  Eclipse Bugzilla Plug-in 242

11.3.2  Mylyn与Eclipse的集成 249

11.3.3  安装Mylyn 249

第12章  Eclipse下的项目管理 254

12.1  Eclipse与项目管理 254

12.1.1  Eclipse与项目时间管理 254

12.1.2  项目管理概论 255

12.2  Eclipse的常用项目管理工具 256

12.2.1  生命周期管理工具 256

12.2.2  其他管理工具 257

12.3  使用CheckStyle管理项目代码规范 257

12.4  使用Maven管理项目 260

12.4.1  Maven简介 260

12.4.2  Maven的基本概念 260

12.4.3  Maven项目的继承和聚合 261

12.4.4  Maven任务 264

12.4.5  Maven的安装 264

12.4.6  Maven插件的安装 265

12.4.7  Maven插件的使用 269

*    *    *

附录1  常用Eclipse插件 273

附录2  常用Eclipse网址 276

附录3  推荐的Eclipse书籍 277

 

 

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个