万本电子书0元读

万本电子书0元读

顶部广告

伯克利软件工程教程(原书第2版)电子书

本书源自加州大学伯克利分校经典软件工程课程,由在线教育先驱Armando Fox与图灵奖得主David Patterson联合撰写。书中以“软件即服务”(SaaS)为主线,围绕云计算环境下的敏捷发(采用极限编程)展,使用Ruby on Ralls和HTML 5JavaScripti讲授云应用和移动应用从发、测试到部署的完整生命周期。 第2版在保持原有“敏捷发+SaaS教学法”核心理念的基础上,引COD(概念导向教学)与CHIPS(编码实践集成编程活动)的创新教学设计,将概念学习与动手实践有机融合。同时提出“API优先”的服务器设计方法,帮助学习者建立基于资源的应用设计思维。

售       价:¥

纸质售价:¥101.00购买纸书

0人正在读 | 0人评论 6.5

作       者:(美) 阿曼多·福克斯,(美) 大卫·帕特森

出  版  社:机械工业出版社

出版时间:2026-08-27

字       数:36.6万

所属分类: 教育 > 大中专教材 > 研究生/本科/专科教材

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(条)
  • 读书简介
  • 目录
  • 累计评论(条)
本书用于一学期的大学软件工程课程,关注云计算、软件即服务(SaaS),以及使用极限编程(XP)、Rails和jQuery框架的敏捷发。本书得到了包括Google在内的领先公司、图灵奖获得者在内的前沿学者以及来自世界各地的参加过Berkeley“敏捷发”系列课程及慕课的学生的支持。可从GitHub免费下载本书的实践练习,包括自动评分系统。<br/>【推荐语】<br/>本书源自加州大学伯克利分校经典软件工程课程,由在线教育先驱Armando Fox与图灵奖得主David Patterson联合撰写。书中以“软件即服务”(SaaS)为主线,围绕云计算环境下的敏捷发(采用极限编程)展,使用Ruby on Ralls和HTML 5JavaScripti讲授云应用和移动应用从发、测试到部署的完整生命周期。 第2版在保持原有“敏捷发+SaaS教学法”核心理念的基础上,引COD(概念导向教学)与CHIPS(编码实践集成编程活动)的创新教学设计,将概念学习与动手实践有机融合。同时提出“API优先”的服务器设计方法,帮助学习者建立基于资源的应用设计思维。<br/>【作者】<br/>Armando Fox,加州大学伯克利分校计算机科学教授,MOOCLab教师顾问。他之前在斯坦福大学任教时,曾获得学生联合会、女工程师协会和Tau Beta Pi工程荣誉协会颁发的教学和指导奖。他在2003年被评为“Scientific American 50”之一,是NSF CAREER奖和国家工程院Gilbreth Lectureship的获得者,并且是ACM杰出科学家。他曾参与设计英特尔奔腾Pro微处理器,并成立了一家成功的创业公司,将其关于移动计算的研究商业化,其中包括世界上第一个运行在移动设备上的图形化网页浏览器(掌上电脑上的Top Gun Wingman)。他拥有麻省理工学院和伊利诺伊大学的电子工程和计算机科学学位。 David A. Patterson Patterson与Hennessy共同荣获了2017年度“图灵奖”,以表彰他们在计算机体系结构领域的创性贡献。Patterson现为Google杰出工程师,之前为加州大学伯克利分校教授。他曾任ACM主席一职,目前是ACM和IEEE会士,美国艺术与科学院和计算机历史博物馆院士,并选了美国国家工程院、国家科学院和硅谷工程名人堂。他领导了RISC I的设计与实现工作,并且是RAID项目的领导者。<br/>
目录展开

译者序

作者简介

前言

第1章 软件即服务、敏捷开发和云计算简介

1.1 引言

1.2 软件开发过程:计划-文档

1.3 软件开发过程:敏捷宣言

1.4 软件质量保证:测试

1.5 生产力:简洁性、综合性、重用和工具

1.6 面向SaaS和服务的架构

1.7 部署SaaS:云计算

1.8 部署SaaS:浏览器和移动设备

1.9 美丽代码对比遗留代码

1.10 导览与本书使用指南

1.11 谬误与陷阱

1.12 结语:软件工程不止于编程

参考文献

第一部分 软件即服务:框架与语言

第2章 如何学习一门新语言

2.1 序言:学习如何学习语言和框架

2.2 结对编程

2.3 介绍Ruby,一种面向对象的语言

2.4 Ruby习惯用法:诗意编程风格、块、鸭子类型

2.5 CHIPS:Ruby入门

2.6 Gems和Bundler:Ruby的库管理

2.7 谬误与陷阱

2.8 结语:如何(不)通过谷歌学习一门语言

参考文献

第3章 SaaS应用架构:微服务、API和REST

3.1 Web的客户端-服务器架构

3.2 SaaS通信使用HTTP路由

3.3 CHIPS:HTTP和URI

3.4 从网站到微服务:SOA

3.5 RESTful API:一切皆资源

3.6 RESTful URI、API调用和JSON

3.7 CHIPS:创建和部署一个简单的SaaS应用

3.8 谬误与陷阱

3.9 结语:从CGI到SOA的连续性

参考文献

第4章 SaaS框架:作为模型-视图-控制器框架的Rails

4.1 模型-视图-控制器架构

4.2 Rails模型:数据库和活动记录

4.3 CHIPS:ActiveRecord基础

4.4 路由、控制器和视图

4.5 CHIPS:Rails路由

4.6 表单

4.7 CHIPS:Rails上的Hangperson

4.8 调试:当出现问题时

4.9 CHIPS:Hello Rails

4.10 谬误与陷阱

4.11 结语:作为服务框架的Rails

参考文献

第5章 SaaS框架:SaaS的高级编程抽象

5.1 在MVC中实现DRY原则:局部视图、验证和过滤器

5.2 单点登录和第三方认证

5.3 CHIPS:Rails简介

5.4 关联和外键

5.5 直通关联

5.6 关联的RESTful路由

5.7 CHIPS:关联

5.8 其他类型的代码

5.9 谬误与陷阱

5.10 结语:语言、生产力和美

参考文献

第6章 移动和桌面SaaS客户端:JavaScript简介

先决条件与概念

6.1 JavaScript:全面概括

6.2 介绍ECMAScript

6.3 类、函数和构造函数

6.4 文档对象模型和jQuery

6.5 文档对象模型和可访问性

6.6 事件和回调

6.7 AJAX:异步JavaScript和XML

6.8 测试JavaScript和AJAX

6.9 CHIPS:对烂番茄应用的AJAX增强

6.10 单页应用程序和JSON API

6.11 谬误与陷阱

6.12 结语:JavaScript的过去、现在和未来

参考文献

第二部分 敏捷软件开发

第7章 需求:行为驱动设计与用户故事

7.1 行为驱动设计与用户故事概述

7.2 评估用户故事的SMART原则

7.3 低保真用户界面草图和故事板

7.4 点数和速度

7.5 敏捷成本估算

7.6 Cucumber:从用户故事到验收测试

7.7 CHIPS:行为驱动设计和Cucumber简介

7.8 显式对比隐式、命令式对比声明式场景

7.9 文档的计划-文档视角

7.10 谬误与陷阱

7.11 结语:行为驱动设计的优缺点

参考文献

第8章 软件测试:测试驱动开发

先决条件与概念

8.1 FIRST原则、测试驱动开发和红绿重构

8.2 测试用例的构成:准备、执行、断言

8.3 隔离代码:替身和接缝

8.4 对互联网进行桩化

8.5 CHIPS:Rails上的RSpec入门

8.6 测试夹具和测试数据工厂

8.7 覆盖概念和测试类型

8.8 其他测试方法和术语

8.9 CHIPS:验收测试/单元测试周期

8.10 测试的计划-文档视角

8.11 谬误与陷阱

8.12 结语:测试驱动开发对比传统调试

参考文献

第9章 软件维护:使用重构和敏捷方法来增强遗留软件

9.1 什么使得代码被“遗留”,如何使用敏捷方法改善这一状况

9.2 探索遗留代码库

9.3 通过特征测试建立基本事实

9.4 注释和提交:代码记录

9.5 指标、代码异味和SOFA

9.6 方法级重构:用接缝代替依赖

9.7 以计划-文档角度处理遗留代码

9.8 谬误与陷阱

9.9 结语:持续重构

参考文献

第10章 敏捷团队

10.1 这需要一个团队:两比萨团队与Scrum

10.2 有效使用分支

10.3 拉取请求和代码审查

10.4 采用持续集成交付待办事项

10.5 CHIPS:敏捷迭代

10.6 报告和修复错误:五个R

10.7 管理团队的计划-文档视角

10.8 谬误与陷阱

10.9 结语:从独立开发者到团队合作

参考文献

第11章 SaaS应用的设计模式

11.1 模式、反模式和SOLID类架构

11.2 刚好足够的UML

11.3 单一责任原则

11.4 开放/封闭原则

11.5 Liskov替换原则

11.6 依赖注入原则

11.7 Demeter原则

11.8 设计模式的计划-文档视角

11.9 6S:干净的代码清单

11.10 谬误与陷阱

11.11 结语:框架捕捉设计模式

参考文献

第12章 Dev/Ops:部署、性能、可靠性和实际安全性

12.1 从开发到部署

12.2 三层架构

12.3 响应性、服务水平目标和Apdex

12.4 发布和特征标志

12.5 监控和查找瓶颈

12.6 利用缓存提高渲染和数据库性能

12.7 避免滥用数据库查询

12.8 CHIPS:利用缓存和索引

12.9 安全性:保护应用程序中的用户数据

12.10 计划与文档视角下的运维

12.11 谬误与陷阱

12.12 结语:超越PaaS基础

参考文献

第13章 尾声

13.1 回顾

13.2 展望未来

13.3 重要阅读

13.4 结语

参考文献

推荐阅读

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部