×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787560666563
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:26cm
  • 页数:320页
  • 出版时间:2022-11-01
  • 条形码:9787560666563 ; 978-7-5606-6656-3

本书特色

本书特色 (1)本书是高等学校新工科计算机类专业系列教材之一,是精品课程建设“软件建模与实践”的配套教材。 (2)本书按照任务驱动的教学思路编写,侧重于实践。通过教学案例,使读者掌握软件设计与开发的方式方法,掌握支持案例的理论基础和必要知识,增强分析问题和解决问题的能力。对同一个案例,给出了不同设计模式下的解决方案,层层递进,逐步引导读者建立软件质量的概念,这也是编者的一个新的尝试。 (3)本书由浅入深,循序渐进。教学案例由小至大,逐步深入,将静态建模、动态建模、设计原则与设计模式、软件体系结构等知识点融于一体,真正做到教、学、用相结合。 (4)本书采用理论和实践相结合的模式,充分培养读者的自学能力、实践能力和创新能力,为今后读者进一步科学研究和从事软件开发工作打下坚实的基础。 本书配有电子教案、教学大纲、课件、案例源码等资源。

内容简介

本书共12章,分为基础篇和实践篇。基础篇(第1-8章)主要介绍软件建模的基础知识、设计原则和设计模式,目的是使读者迅速了解和掌握与软件建模相关的知识与方法,主要内容为面向对象方法学、软件建模和设计的基本知识、UML的基本概念、软件开发过程及规范、面向对象的设计原则、软件设计模式、软件体系结构等。实践篇(第9-12章)介绍设计原则、设计模式、软件体系结构的具体应用,主要内容为基于工厂模式的计算器、俄罗斯方块游戏、基于泛化特性的矢量绘图软件、学生成绩管理系统的实现过程等。

目录

基 础 篇 第1章 引言 2 1.1 软件建模 3 1.1.1 模型 3 1.1.2 软件模型 3 1.1.3 建模 4 1.1.4 面向对象的建模 4 1.2 面向对象方法学 5 1.2.1 软件危机 5 1.2.2 软件工程 5 1.2.3 复杂性及控制复杂性的基本方法 6 1.2.4 面向对象技术 7 1.2.5 面向对象领域中的基本概念 8 1.3 面向对象的建模语言 10 1.3.1 面向对象建模语言的发展历史 10 1.3.2 UML的组成 11 1.3.3 UML的特点 12 1.4 面向对象的设计原则 13 1.5 面向对象的设计模式 13 1.5.1 设计模式的概念 13 1.5.2 设计模式的基本要素 14 1.5.3 设计模式的分类 14 1.5.4 学习设计模式的意义 15 1.6 软件体系结构设计 15 1.6.1 软件体系结构的概念 15 1.6.2 软件体系结构的建模研究 16 1.6.3 发展基于体系结构的软件开发模型 16 本章小结 16 习题 17 第2章 统一建模语言(UML)表示法概述 18 2.1 分类 19 2.1.1 结构图 19 2.1.2 行为图 20 2.2 用例图 20 2.2.1 用例图的概念 20 2.2.2 用例图的作用 21 2.2.3 用例图的组成元素 21 2.3 类图 25 2.3.1 类图的概念 25 2.3.2 类的表示 26 2.3.3 类的分类 27 2.3.4 类之间的关系 28 2.4 对象图 30 2.4.1 对象图的概念 31 2.4.2 对象图的表示 31 2.5 包图 32 2.5.1 包图的概念 32 2.5.2 包图的作用 32 2.5.3 包图的组成元素 33 2.5.4 包图中的关系 35 2.6 交互图 36 2.6.1 顺序图 36 2.6.2 通信图 37 2.6.3 定时图 39 2.7 活动图 40 2.7.1 活动图的概念 40 2.7.2 活动图的作用 41 2.7.3 活动图的组成元素 41 2.8 状态机图 43 2.8.1 状态机图的概念 43 2.8.2 状态机图的作用 44 2.8.3 状态机图的组成元素 44 2.8.4 转换的分类 45 2.8.5 状态的分类 47 2.8.6 历史状态 47 2.8.7 建立状态机图 48 2.9 部署图 50 2.9.1 部署图的概念 50 2.9.2 部署图的作用 51 2.9.3 部署图的组成元素 51 2.9.4 部署图的应用 52 2.9.5 部署图用于对其他系统的建模 53 2.10 UML扩展机制 53 2.10.1 构造型(Stereotype) 54 2.10.2 标记值(Tagged Value) 54 2.10.3 约束(Constraint) 54 本章小结 55 习题 56 第3章 面向对象的设计原则 58 3.1 软件的可维护性和可复用性 58 3.1.1 软件的可维护性 58 3.1.2 软件的可复用性 60 3.2 面向对象设计原则 61 3.2.1 单一职责原则 61 3.2.2 开闭原则 63 3.2.3 里氏替换原则 64 3.2.4 依赖倒置原则 66 3.2.5 接口隔离原则 68 3.2.6 合成复用原则 69 3.2.7 迪米特法则 71 本章小结 72 习题 73 第4章 软件建模和设计方法 76 4.1 COMET基于用例的软件生存周期 76 4.2 COMET生存周期与其他软件 过程的比较 77 4.2.1 COMET生存周期与统一软件 开发过程对比 78 4.2.2 COMET生存周期与螺旋模型对比 78 4.3 需求、分析和设计建模 79 4.3.1 需求建模中的活动 79 4.3.2 分析建模中的活动 79 4.3.3 设计建模中的活动 79 4.4 用例建模 80 4.4.1 需求建模 80 4.4.2 用例分析 82 4.4.3 参与者 82 4.4.4 标识用例 84 4.4.5 用例规格化描述 85 4.4.6 用例关系 86 4.4.7 用例图在需求分析过程中的作用 88 4.5 静态建模 89 4.5.1 类之间的关联 89 4.5.2 组合和聚合层次 93 4.5.3 泛化/特化层次 94 4.5.4 约束 94 4.5.5 静态建模与UML 95 4.6 动态建模 99 4.6.1 状态机图的建模 99 4.6.2 顺序图的建模 101 4.6.3 通信图的建模 105 4.6.4 顺序图和通信图的比较 107 本章小结 107 习题 107 第5章 软件体系结构设计 110 5.1 客户端/服务器体系结构 111 5.1.1 概念 111 5.1.2 特点 111 5.1.3 三层C/S体系结构 112 5.1.4 案例简析:高校学生管理系统 113 5.2 浏览器端/服务器体系结构 114 5.2.1 概念 114 5.2.2 特点 115 5.2.3 案例简析:图书馆信息管理系统 115 5.3 面向服务的体系结构 116 5.3.1 概念 117 5.3.2 特点 117 5.3.3 SOA的实现方法 119 5.3.4 案例简析:基于SOA的报销系统 121 5.4 基于构件的软件体系结构 122 5.4.1 概念及特点 122 5.4.2 构件的制作与组装 122 5.4.3 案例简析:洪水预报系统 124 5.5 并发和实时软件体系结构 125 5.5.1 并发的产生背景及原因 125 5.5.2 并发和并行 126 5.5.3 实时软件体系结构 128 5.5.4 案例简析:高并发系统架构的 负载均衡 129 本章小结 130 习题 131 第6章 软件设计模式——创建型模式 134 6.1 创建型模式概述 134 6.2 单例模式 135 6.2.1 单例模式的定义 136 6.2.2 单例模式的原理与框架 136 6.2.3 应用案例——数据库连接池 138 6.2.4 单例模式的优缺点及适用场景 138 6.3 工厂模式 139 6.3.1 简单工厂模式 139 6.3.2 工厂方法模式 141 6.4 抽象工厂模式 144 6.4.1 抽象工厂模式的定义 145 6.4.2 抽象工厂模式的原理与结构 145 6.4.3 应用案例——汽车制造 146 6.4.4 抽象工厂模式的优缺点及适用场景 146 6.5 建造者模式 147 6.5.1 建造者模式的定义 148 6.5.2 建造者模式的原理及结构 148 6.5.3 应用案例——网游游戏角色设计 148 6.5.4 建造者模式的优缺点及适用场景 150 6.6 原型模式 150 6.6.1 定义及结构 150 6.6.2 应用案例——创建医院病历 152 6.6.3 原型模式的优缺点及适用场景 152 本章小结 153 习题 153 第7章 软件设计模式——结构型模式 155 7.1 结构型模式概述 155 7.2 适配器模式 156 7.2.1 适配器模式的定义 157 7.2.2 适配器模式的原理与框架 157 7.2.3 应用案例——没有源码的依赖库 158 7.2.4 适配器模式的优缺点及适用场景 159 7.3 桥接模式 160 7.3.1 桥接模式的定义 160 7.3.2 桥接模式的原理与框架 160 7.3.3 应用案例——跨平台的数据 处理系统 161 7.3.4 桥接模式的优缺点及适用场景 164 7.4 组合模式 165 7.4.1 组合模式的定义 165 7.4.2 组合模式的原理与框架 165 7.4.3 应用案例——几何形状绘制 软件的框架结构 166 7.4.4 组合模式的优缺点及适用场景 169 7.5 装饰模式 169 7.5.1 装饰模式的定义 170 7.5.2 装饰模式的原理与框架 170 7.5.3 应用案例——文件管理工具 171 7.5.4 装饰模式的优缺点及适用场景 173 7.6 外观模式 173 7.6.1 外观模式的定义 174 7.6.2 外观模式的原理与框架 175 7.6.3 应用案例——视频解码模块 176 7.6.4 外观模式的优缺点及适用场景 176 7.7 享元模式 177 7.7.1 享元模式的定义 177 7.7.2 享元模式的原理与框架 178 7.7.3 应用案例——飞机大战游戏 179 7.7.4 享元模式的优缺点及适用场景 180 7.8 代理模式 181 7.8.1 代理模式的定义 181 7.8.2 代理模式的原理与框架 181 7.8.3 应用案例——物流信息查询 182 7.8.4 代理模式的优缺点及适用场景 184 本章小结 185 习题 185 第8章 软件设计模式——行为型模式 186 8.1 行为型模式概述 186 8.2 职责链模式 188 8.2.1 职责链模式的定义 188 8.2.2 职责链模式的原理与框架 188 8.2.3 应用案例——贷款业务系统的 分级审批 189 8.2.4 纯与不纯的职责链模式 190 8.2.5 职责链模式的优缺点及适用场景 191 8.3 命令模式 192 8.3.1 命令模式的定义 192 8.3.2 命令模式的原理与框架 192 8.3.3 应用案例——自定义功能键 193 8.3.4 命令模式的优缺点及适用场景 195 8.4 迭代器模式 196 8.4.1 迭代器模式的定义 196 8.4.2 迭代器模式的原理与框架 196 8.4.3 应用案例——商品交易系统中 数据的遍历 197 8.4.4 迭代器模式的优缺点及适用场景 199 8.5 观察者模式 200 8.5.1 观察者模式的定义 200 8.5.2 观察者模式的原理与框架 200 8.5.3 应用案例——地图应用中道路 拥堵通知功能的设计 202 8.5.4 观察者模式的优缺点及适用场景 203 8.6 中介者模式 204 8.6.1 中介者模式的定义 205 8.6.2 中介者模式的原理与框架 205 8.6.3 应用案例——学生信息管理窗口 设计 206 8.6.4 中介者模式的优缺点及适用场景 209 8.7 备忘录模式 209 8.7.1 备忘录模式的定义 210 8.7.2 备忘录模式的原理与框架 210 8.7.3 应用案例——可悔棋的国际象棋 210 8.7.4 备忘录模式的优缺点及适用场景 212 8.8 解释器模式 213 8.8.1 解释器模式的定义 213 8.8.2 解释器模式的原理与框架 213 8.8.3 应用案例——ROS小车控制程序 214 8.8.4 解释器模式的优缺点及适用场景 216 8.9 状态模式 217 8.9.1 状态模式的定义 217 8.9.2 状态模式的原理与框架 217 8.9.3 应用案例——购物网站中的 商品类设计 218 8.9.4 状态模式的优缺点及适用场景 221 8.10 策略模式 222 8.10.1 策略模式的定义 222 8.10.2 策略模式的原理与框架 222 8.10.3 应用案例——景区门票打折方案 223 8.10.4 策略模式的优缺点及适用场景 226 8.11 模板方法模式 227 8.11.1 模板方法模式的定义 228 8.11.2 模板方法模式的原理与框架 228 8.11.3 应用案例——商品邮费计算模块 229 8.11.4 模板方法模式的优缺点及 适用场景 230 8.12 访问者模式 231 8.12.1 访问者模式的定义 231 8.12.2 访问者模式的原理与框架 231 8.12.3 应用案例——在线学习系统中 学员数据汇总 233 8.12.4 访问者模式的优缺点及适用场景 234 本章小结 235 习题 235 实 践 篇 第9章 基于工厂模式的计算器 238 9.1 需求分析 238 9.2 设计过程 239 9.3 具体实现 240 习题 247 第10章 俄罗斯方块游戏 248 10.1 需求分析 248 10.2 设计过程 249 10.2.1 功能设计 249 10.2.2 类的设计 250 10.3 具体实现 252 习题 265 第11章 基于泛化特性的矢量绘图软件 266 11.1 需求分析 266 11.2 设计过程 266 11.3 具体实现 267 习题 288 第12章 学生成绩管理系统 289 12.1 需求分析 289 12.2 设计过程 290 12.3 具体实现 291 习题 319 参考文献 320
展开全部

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航