万本电子书0元读

万本电子书0元读

顶部广告

代码中的软件工程电子书

1.以在线放课程“工程化编程实战”为核心内容,增加了常用工具、需求分析与建模方法、软件架构和软件过程等相关内容。 2.作者系中国科学技术大学软件学院软件工程10年教学改革的实践者,具有近20年代码编程 12年软件工程教学经验,他的慕课荣获“国家精品在线放课程”。 3.本书反其道而行之,以“实用”为原则构成全书体系,从写代码的工具着手,逐步深到模块化设计、需求建模、设计模式和软件架构等内容,章末设有练习环节,并提供可下载的配套源代码文件,让读者在做中学,而从“程序员”修炼成“软件工程师”。

售       价:¥

纸质售价:¥44.90购买纸书

17人正在读 | 0人评论 6.6

作       者:孟宁 编著

出  版  社:人民邮电出版社有限公司

出版时间:2022-05-01

字       数:21.2万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书共五篇:篇介绍常用工具VS Code、Git 和正则表达式;第二篇以C 语言代码为例介绍工程化编程的基本方法,涵盖代码的风格和规范、模块化、可复用、可重函数与线程安全等;第三篇介绍从需求分析到软件设计的基本建模方法——从需求分析始,以UML 为工具完成用例建模、业务领域建模、对象交互建模,终形成设计方案;第四篇探讨软件的元素、结构、特性和描述方法,以及高质量软件的内涵等;第五篇回顾软件危机的前因后果,并将之与PSP、TSP、CMM/CMMI、敏捷发、DevOps 等软件过程和生命周期管理衔起来。 本书以国家精品在线放课程——“工程化编程实战”为核心内容,增加了常用工具、需求分析与建模方法、软件结构和软件过程等相关内容,内容全面、新颖,实践性强。本书主要针对在校学生编写,适合设相关专业的普通高校和高职院校作为主要教材,也可供不同层次的自学者学习参考。<br/>【推荐语】<br/>1.以在线放课程“工程化编程实战”为核心内容,增加了常用工具、需求分析与建模方法、软件架构和软件过程等相关内容。 2.作者系中国科学技术大学软件学院软件工程10年教学改革的实践者,具有近20年代码编程 12年软件工程教学经验,他的慕课荣获“国家精品在线放课程”。 3.本书反其道而行之,以“实用”为原则构成全书体系,从写代码的工具着手,逐步深到模块化设计、需求建模、设计模式和软件架构等内容,章末设有练习环节,并提供可下载的配套源代码文件,让读者在做中学,而从“程序员”修炼成“软件工程师”。 4. 软件工程领域刘强、朱少民、邹欣、陈振宇倾情推荐!<br/>【作者】<br/>孟宁 中国科学技术大学软件学院专职教师,主讲“高级软件工程”“ Linux操作系统分析”等课程。 他讲授的两门慕课获评国家精品在放课程和本科课程,选华为“智能基座”精品慕课,被中国高校计算机教育MOOC联盟评为优秀课程,荣获安徽省教学成果奖二等奖,等等。在线课程视频在读行学、网易云课堂、学堂在线、B站等在线平台的累计学员达20余万人。 他专注于 Linux操作系统、软件工程、人工智能和区块等技术领域,与华为、OPPO、龙芯中科等多家国内外企业和创业公司有技术合作。<br/>
目录展开

内容提要

前言

资源与支持

配套资源

提交勘误

扫码关注本书

与我们联系

关于异步社区和异步图书

第一篇 工欲善其事,必先利其器

第1章 编程“神器”Visual Studio Code

1.1 Visual Studio Code的安装和基本用法

1.2 VS Code为什么能这么牛

1.3 基于VS Code的C/C++开发调试环境配置

1.4 VS Code远程开发环境配置

本章练习

第2章 五大场景玩转Git

2.1 Git分布式版本控制系统

2.2 场景一:Git本地版本库的基本用法

2.3 场景二:Git远程版本库的基本用法

2.4 Git背后的设计理念

2.5 场景三:团队项目中的分叉合并

2.6 场景四:Git Rebase整理提交记录

2.7 场景五:Fork + Pull request开发工作流程

本章练习

第3章 正则表达式十步通关

3.1 为什么使用正则表达式

3.2 第一关:基本的字符串搜索方法

3.3 第二关:同时搜索多个字符串的方法

3.4 第三关:在匹配字符串时的大小写问题

3.5 第四关:通配符的基本用法

3.6 第五关:匹配具有多种可能性的字符集

3.7 第六关:贪婪匹配和懒惰匹配

3.8 第七关:一些特殊位置和特殊字符

3.9 第八关:使用捕获组复用模式

3.10 第九关:基本的字符串搜索替换方法

3.11 第十关:在替换中使用捕获组复用模式

本章练习

第二篇 工程化编程实战

第4章 简约而不简单——代码规范和代码风格

4.1 实验项目介绍

4.2 代码风格的原则:简明、易读、无二义性

4.3 编写高质量代码的基本方法

本章练习

第5章 模块化软件设计

5.1 模块化思想背后的基本原理

5.2 模块化代码的基本写法举例

5.3 传统单体集中式架构与微服务架构

5.4 模块化软件设计中的基本方法

本章练习

第6章 可复用软件设计

6.1 消费者复用和生产者复用

6.2 接口的基本概念

6.3 可复用软件模块的接口设计示例

6.4 通用接口定义的基本方法

本章练习

第7章 可重入函数与线程安全

7.1 线程的基本概念

7.2 函数调用堆栈

7.3 可重入函数

7.4 什么是线程安全

7.5 LinkTable软件模块的线程安全分析

本章练习

第8章 子系统的工程化

8.1 menu子系统的可复用接口设计

8.2 Makefile工程文件举例

8.3 带参数的复杂命令函数接口的写法

8.4 看待软件质量的几个不同角度

8.5 编程的基本方法和原则

本章练习

第三篇 需求分析和软件设计

第9章 获取需求的主要方法

9.1 什么是需求

9.2 为什么需求非常重要

9.3 有哪些类型的需求

9.4 有哪些和需求相关的人员

9.5 获取需求的主要方法

9.6 高质量的需求是什么样子

9.7 绘图工具VS Code和draw.io

本章练习

第10章 对需求进行分析和建模

10.1 原型化方法和建模的方法

10.2 用例建模

10.3 业务领域建模

10.4 关联类及其关系数据模型

10.5 关系数据的MongoDB数据建模

10.6 软件业务概念的原型

本章练习

第11章 从需求分析向软件设计的过渡

11.1 敏捷统一过程

11.2 对象交互建模

11.3 形成软件设计方案

本章练习

第四篇 软件科学基础概论

第12章 软件是什么

12.1 软件的基本构成元素

12.2 软件的基本结构

12.3 软件中的一些特殊机制

12.4 软件的内在特性

本章练习

第13章 软件设计模式

13.1 什么是设计模式

13.2 软件设计模式的分类

13.3 常用的软件设计模式

13.4 观察者模式举例

13.5 软件设计模式背后的设计原则

本章练习

第14章 软件架构举例

14.1 三层架构

14.2 MVC架构

14.3 MVVM架构

本章练习

第15章 软件架构风格与描述方法

15.1 构建软件架构的基本方法

15.2 软件架构风格与策略

15.3 软件架构的描述方法

本章练习

第16章 什么是高质量软件

16.1 软件质量的3种视角

16.2 几种重要的软件质量属性

本章练习

第五篇 软件危机的前生后世

第17章 软件危机概述

17.1 软件危机产生的背景

17.2 软件危机的主要表现及根源

17.3 有关软件危机的争论

本章练习

第18章 软件过程模型

18.1 软件的生命周期概述

18.2 瀑布模型

18.3 原型化的瀑布模型

18.4 V模型

18.5 分阶段的增量和迭代开发过程

18.6 螺旋模型

本章练习

第19章 PSP和TSP

19.1 个体和团队

19.2 个体软件过程

19.3 团队软件过程

本章练习

第20章 CMM/CMMI

20.1 CMM/CMMI简介

20.2 CMM/CMMI的作用

20.3 CMM/CMMI的主要内容

20.4 CMMI的评估过程

本章练习

第21章 敏捷方法

21.1 敏捷方法产生的背景

21.2 敏捷软件开发宣言及所遵循的原则

21.3 Scrum敏捷开发方法

本章练习

第22章 DevOps

22.1 什么是DevOps

22.2 DevOps和敏捷方法

22.3 DevOps和精益原则

22.4 DevOps和全栈自动化

本章练习

测验题

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部