第1章 软件系统架构与软件工程 1
1.1计算机及其软件系统 1
1.1.1系统及其基本特性 1
1.1.2分布式计算机系统 2
1.1.3 RM-ODP及其视点模型 4
1.1.4软件系统及其质量属性 5
1.2软件系统的流程要素 7
1.2.1系统工程概要 7
1.2.2软件工程概要 9
1.2.3 CMM及其关键实践 13
1.2.4软件配置管理工具 18
1.3软件系统的架构要素 22
1.3.1软件设计的模块化、形式化与层次化 22
1.3.2软件架构与软件框架 24
1.3.3面向对象软件开发vs.软件架构 29
1.3.4基于组件的软件开发vs.软件架构 32
1.3.5面向切面编程vs.软件架构 34
1.4 UML语言与UML工具 36
1.4.1 UML vs.软件架构视图模型 36
1.4.2基于UML的软件架构设计 37
1.4.3 UML与4+1视图 41
1.4.4 UML工具与软件架构设计 48
1.5软件设计风格与软件设计模式 49
1.5.1概述 49
1.5.2软件设计风格 49
1.5.3面向对象的软件设计模式 53
第2章 软件开发平台与软件系统架构 58
2.1软件系统开发语言 58
2.2 C++与Java的对比综述 60
2.3 C++与Java的开发工具与开发过程 67
2.3.1 C++的基本开发工具与开发过程 67
2.3.2 Visual C++的开发平台与开发过程 70
2.3.3 Java的基本开发工具与开发过程 72
2.3.4 Java的三个开发平台 74
2.3.5 Java集成开发工具 92
2.4 Java SE的架构相关技术 92
2.4.1 Java的反射技术 93
2.4.2 Java的对象序列化技术 98
2.4.3 Java的异常处理技术 101
2.4.4 Java线程的并发控制 104
2.4.5 Java的集合类 105
2.5 Visual C++的架构相关技术 107
2.5.1 Windows API的窗口技术与消息处理技术 107
2.5.2 MFC的架构相关技术 112
2.5.3 Visual C++的动态链接库 132
2.6 Visual Studio与.NET框架 136
2.6.1 CLR及其相关概念 136
2.6.2关于C 137
2.6.3桌面应用框架 137
2.6.4扩展的B-S架构 141
2.7 Android平台 149
2.7.1 Android操作系统 149
2.7.2 Dalvik虚拟机 150
2.7.3 Android应用软件框架及其Activity构件 150
2.7.4 Android应用开发例子 152
第3章C-S架构的常用协议 154
3.1概述 154
3.2 HTTP及其扩展协议 155
3.2.1 HTTP协议概要 155
3.2.2 URL与URI 156
3.2.3 HTTP协议的PDU 159
3.2.4 B-S架构与HTTP协议封装 162
3.2.5 HTTP的扩展协议WebDAV 164
3.3 JDBC/ODBC协议 167
3.3.1数据库应用系统及其C-S架构 167
3.3.2数据库系统 168
3.3.3 JDBC客户端架构 171
3.3.4 ODBC客户端架构 174
3.4 LDAP协议与JNDI 176
3.4.1名字服务与目录服务 176
3.4.2 LDAP协议及其模型 178
3.4.3 JNDI 185
第4章 中立化信息交换语言 191
4.1概述 191
4.2 ASN.1. 192
4.2.1 ASN.1概述 192
4.2.2 ASN.1的抽象语法 193
4.2.3 BER编码 199
4.2.4 DER编码 202
4.3 HTML 203
4.3.1 HTML概述 203
4.3.2 HTML的高层元素 204
4.3.3 HTML的中层元素 205
4.3.4 HTML的基层元素 209
4.3.5 HTML的层叠样式表 214
4.3.6 HTML中的JavaScript程序 216
4.4 XML 218
4.4.1 XML概述 218
4.4.2 XML元素及其属性 220
4.4.3基于DTD的元素与属性声明 221
4.4.4基于DTD的XML文档的逻辑和物理结构 223
4.4.5 XML Schema 228
4.4.6 XML解析器 238
第5章 中间件与分布式软件架构 245
5.1概述 245
5.2传统中间件 245
5.3 Java EE中间件 253
5.3.1 Java的RMI技术 253
5.3.2 EJB技术 257
5.3.3 JMS技术 265
5.3.4 JDBC数据源与JTA/JTS 271
5.4 CORBA与Web Services 275
5.4.1跨平台中间件概述 276
5.4.2 CORBA中间件 277
5.4.3 Web Services中间件 284
附录 演示程序清单 299
参考文献 302