构建之法 现代软件工程

这篇是计算机类的优质预售推荐>>>>《构建之法
现代软件工程(第二版)》

“做中学 Learning By Doing”的现代方式教授软件工程,李未院士鼎力推荐,众多软工教师一致好评,微软研发总监邹欣力作

编辑推荐

1.作者的讲授方法非常新颖,符合现代软件工程的学习和训练规律,在各大高校计算机教学中取得很好的效果和反馈。

2.作者知名度很高,具有深厚的微软工作背景,是软件工程产学结合的典范。

3.作者在博客园开设了专题博客,提供教学指导、教学素材以及与学生进行交流互动,效果非常好。

4.在2013年10月上海举行的软件工程教育年会上,作者做了介绍其教学法的主题演讲,引发了高等院校软件学院中软件工程课程老师的激烈反向。与会老师对作者的教学法和教材计划等,都表现出极大的兴趣。

内容简介

软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较空洞乏味的课程。 但是软件工程的技术对于投身IT
产业的学生来说是非常重要的。作者邹欣有长达20年的一线软件开发经验,他利用业余时间在数所高校进行了长达6年的软件工程教学实践,总结出了在16周的时间内让同学们通过 “做中学 (Learning By Doing)” 掌握实用的软件工程技术的教学计划,并得到高校师生的积极反馈。在此基础上,作者对软件工程的各个知识点和技能要求进行了系统性整理,形成教材。

本书共分17章,对照美国ACM/IEEE2013年新出版的计算机科学教学指导(Computer ScienceCurricula 2013)中的软件工程相关部分,这本教材覆盖了其中大多数Core-Tier1和Core-Tier2的内容。可以说,全书对软件工程内容的覆盖不逊于任何一本现行的教材,同时讲述了业界最新实践方法。

作译者

邹欣现任微软Windows中国工程团队首席研发总监。1996—2003年,邹欣在微软Outlook团队从事开发工作,2003—2005年,他在微软内部质量工具团队和Visual
Studio团队负责软件项目管理工具的开发。2005—2012年,他担任微软亚洲研究院技术创新组研发主管,负责研究成果的产品化和创新项目。2012—2014年,他担任微软亚洲互联网工程院首席研发总监,负责必应搜索客户端、必应输入法、必应词典等产品。加入微软前,邹欣从事过商用Unix系统、GPS/GIS软件开发及测试工作。他在2007年出版了《移山之道》,于2008年出版了《编程之美》 (合作)。他于1991年获北京大学计算机软件专业学士学位。1996年获美国美国韦恩州立大学(WayneState University)计算机软件专业硕士学位。

微博 http://weibo.com/sdxinz

博客 http://www.cnblogs.com/xinz

专栏 http://zhuanlan.zhihu.com/goujianzhifa

部分目录

I
推荐序

III 读者反馈

V 前 言

1 给任课老师和助教的建议

15 第1 章 概 论

1.1 软件 = 程序 + 软件工程 1

1.2 软件工程是什么 9

1.3 练习与讨论 18

35 第2 章 个人技术和流程

2.1 单元测试 20

2.2 效能分析工具 29

2.3 个人开发流程 34

2.4 实践 37

2.5 练习与讨论 42

57 第3 章 软件工程师的成长

3.1 个人能力的衡量与发展 43

目 录

ii 构建之法— 现代 软件工程

3.2 软件工程师的职业发展 48

3.3 技能的反面 52

3.4 练习与讨论 55

73 第4 章 两人合作

4.1 代码规范 56

4.2 代码风格规范 58

4.3 代码设计规范 63

4.4 代码复审 66

4.5 结对编程 72

4.6 两人合作的不同阶段和技巧 77

4.7 练习与讨论 83

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-09 12:58:48

构建之法 现代软件工程的相关文章

构建之法现代软件工程(第二次)

构建之法现代软件工程(第二次) 单元测试是什么? 单元测试是为了让各个模块的质量能得到稳定的,量化的保证的一种有效解决方案.(VSTS) 好的单元测试的标准是什么? 1.单元测试应该在最基本的功能/参数上验证程序的正确性 2.单元测试必须由最熟悉代码的人(程序的作者)来写 3.单元测试过后,机器状态保持不变 4.单元测试要快 5.单元测试应该产生可重复,一致的结果. 6.独立性--单元测试的运行/通过/失败不依赖于别的测试,可以人为构造数据,以保持单元测试的独立性. 7.单元测试应该覆盖所有代码

《构建之法——现代软件工程》

在读完邹欣老师的<构建之法——现代软件工程>后颇有感想,这本书的厉害之处是把软件的开发方法写的十分的清晰.有趣,将每一章的理论和知识点进行了归纳,举例说明,故事与企业相结合相联系,让我们进行了一次头脑风暴.在每一章要点中有重点字眼的加黑,图文搭配更加的生动形象,在阅读完代码.文字之后的图片不禁让人会心一笑.它结合了作者自身的开发经验,书中创造了一个虚拟环境,通过人物的对话和活动,讲述不同人物在软件工程中等不同角色和作用,展现出了软件工程这么学科,文中的代码有很强的实用性,更容易让人接受,让人有

《构建之法—现代软件工程》读后感

大家好,我是一名软件工程的在读大学生,之前对于软件工程并没有太大的认知,想着大概也就是敲敲代码,写写文档之类的,并没有进行太过深入的了解,但自从阅读了邹欣老师的<构建之法—现代软件工程>,似乎为我打开了关于软件工程的另一扇新世界的大门,让我对此有了不同的认识.       整本书中主要讲述了软件工程的基本概述,个人技术以及流程,软件工程师的成长,团队协作及流程,需求分析项目经理,软件设计与实现,用户体验以及软件测试,软件质量保证以及关于IT行业的创新.我们常常宣称软件工程非常的重要,它甚至背负

读《构建之法-现代软件工程》前三张后感

刚开学的第一天,学校发下了书本,有六本书,当时会在上这门课的头一天晚上去看看书本的内容,去大概了解这门课程.其中有一门课程的书吸引了我,感觉这本书和其他的教科书有所不同,它不像其他书一样那么的死板,除了公式,就是理论,没什么奇特的地方.而这本书却很奇特,它不但吸引了我,还让我觉得很有趣,这本书是邹欣老师写的一本书,一本胜似小说的书,平时爱看小说的我,就开始喜欢上了这本书,这本有关软件工程的小说书. 到现在,老师也上了好几次课,我们也对软件工程有了一些初步的了解,而软件工程这本书,我也大概的看完了

读《构建之法 现代软件工程(第二版)》

1.读后感: 对于计算机相关专业的学生来说,我们学习了很多的专业课程,像编程语言.算法.数据结构.编译原理.软件工程等.但是我相信很多同学和我一样仍然对于我们现在学到的课程在之后有什么用心存疑惑.也就是说,大家都觉得理论和实践之间有着不可逾越的鸿沟.然而在读到邹欣老师的这本书<构建之法 现代软件工程(第二版)>的时候,我解决了我一直纠结的这个问题. 因为作业要求,第一遍是快速阅读,虽然仍然对书里的一些内容有些疑问,但是仍然觉得这本书有很多特点: (1)文字+图画:很多专业书都有一个问题就是整本

快速阅读《构建之法——现代软件工程》

2017年4月1日,我借阅了<构建之法--现代软件工程>一书,2017年4月13日上午终于快速读完了一遍.书中包含的内容丰富,其中大量的网上链接没有阅读.在我看来,读这本书应该先通览全篇,不能被大量的链接在第一次阅读的时候就打断.网上的链接一个接一个,这样会导致我忘记了最初的阅读目的.也许,这就是万维网的一个弊端吧. 速读<构建之法--现代软件工程>记录日程如下: 星期日 星期一 星期二 星期三 星期四 星期五 星期六             1开始阅读 2 3第二章第三章 4 5

构建之法现代软件工程(第五次)

构建之法现代软件工程(第五次) 这周我阅读了<构建之法>第六第七章 敏捷开发的原则: (1)尽早并持续地交付有价值的软件以满足顾客的需求: (2)敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势: (3)经常发布可用的软件,发布间隔可以从几周到几个月,能短则短: (4)业务人员和开发人员在项目开发过程中应该每天共同工作: (5)以有进取心的人为项目核心,充分支持信任他们: (6)无论团队内外,面对面的交流始终是最有效的沟通方式: (7)可用的软件是衡量项目进展的主要指标: (8)敏捷

《构建之法—现在软件工程》心得体会

作为软件工程专业的一员,我觉得自己并没有学习到太多跟专业有关的知识,甚至不是很清楚的了解“软件工程”这一词的意思,每逢家中的长辈问学的什么专业,我都需要用很白化的词语解释,就是开发游戏的软件,纯属敷衍了事.因为本人自己也不太清楚. 本学期有一门课程叫——软件测试,可此课程居然有两本教材,后经老师介绍后,才知道<构建之法——现在软件工程>这本书由我们自己去阅读.起初由于无聊,我把<构建之法——现在软件工程>这本书拿出来看,没想到根本停不下来,它把软件开发方法讲得清晰有趣,书中还遇用许

浅谈对《构建之法——现代软件工程》第一章的理解

---恢复内容开始--- 一.精读第一章后对专业术语的整理 <构建之法——现代软件工程>一书第一章向我们主要介绍了计算机科学的领域.软件工程与计算机科学的关系.软件的特性以及软件工程的定义与组成部分. 1.通过对第一章的学习,我们了解到了软件的 几种分类: 系统软件:操作系统.设备驱动程序.工具软件等 应用软件:办公软件.通信软件.游戏视频软件等 恶意软件:软件病毒等 以及软件的几种特殊性:1.负责性:2.不可见性:3.易变性:4.服从性:5.非连续性: 2.软件工程与计算机科学的关系 首先,