<內容簡介>
《SaaS軟件工程(雲計算時代的敏捷開發)》介紹了21世紀以來軟件工程的兩個新的發展方向——軟件即服務和敏捷開發。本書第一部分介紹了軟件即服務及其相關的編程環境,包括Ruby、Rails和JavaScript等內容;第二部分介紹了現代軟件開發並強調了敏捷開發相關技術,包括行為驅動和測試驅動的設計與開發,遺留代碼處理,項目團隊管理,設計模式,軟件架構等內容,並給出了許多有用的建議。
本書的作者Armando Fox(福克斯)和David Patterson(帕特森)不僅在電腦科學領域建樹頗豐,而且在軟件工程方面也有著豐富的教學和研究實踐經驗。他們將軟件即服務和敏捷開發的內容與具體的實例相結合,完成了這本內容豐富且易於學習的書。我們希望本書能夠幫助你通過實踐學到軟件開發的知識與技能,並能開發出漂亮而持久的軟件。
<章節目錄>
第1章 SaaS與敏捷開發介紹
1.1 簡介
1.2 SaaS,軟件即服務
1.3 面向服務的架構(SOA)
1.4 雲計算
1.5 漂亮的代碼與遺留代碼
1.6 軟件質量保證:測試
1.7 生產力:簡明、綜合、復用和工具
1.8 軟件開發過程:計劃和文檔過程
1.9 軟件開發過程:敏捷宣言
1.10 本書導覽
1.11 如何閱讀本書
1.12 謬論和陷阱
1.13 結束語:軟件工程不只是單純的編程
1.14 深入學習
1.15 建議的練習
第一部分 軟件即服務
第2章 SaaS應用的架構
2.1 100 000英尺:客戶端-服務器架構
2.2 50 000英尺:通信——HTTP和URI
2.3 10 000英尺:表示方法——HTML和CSS
2.4 5000英尺:3層體系結構和橫向擴展
2.5 1000英尺:模型-視圖-控制器架構
2.6 500英尺:模型的活動記錄
2.7 500英尺:路由、控制器與REST
2.8 500英尺:模板視圖
2.9 謬論和陷阱
2.10 結束語:模式、架構和長壽命的API
2.11 深入學習
2.12 建議的練習
第3章 SaaS架構:針對Java編程者的Ruby簡介
3.1 概述以及Ruby的三大支柱
3.2 一切都是對象
3.3 每一個操作都是一個方法調用
3.4 類、方法和繼承
3.5 所有的編程都是元編程
3.6 塊:迭代器、函數式習語和閉包
3.7 mix-in和鴨子類型
3.8 用yield構造自己的迭代器
3.9 謬論和陷阱
3.10 結束語:慣用語言使用
3.11 深入學習
3.12 建議的練習
第4章 SaaS架構:Rails簡介
4.1 Rails基礎:從0到CRUD
4.2 數據庫和遷移
4.3 模型:ActiveRecord基礎
4.4 控制器和視圖
4.5 調試:當出現錯誤時
4.6 表單提交:new和create
4.7 重定向和flash
4.8 完成CRUD:編輯∕更新和銷毀
4.9 謬論和陷阱
4.10 結束語:SOA的設計
4.11 深入學習
4.12 建議的練習
第5章 SaaS框架:Rails高級功能
5.1 去除MVC中的重複:partial、校驗和過濾器
5.2 單點登錄和第三方認證
5.3 關聯和外鍵
5.4 間接關聯:
5.5 關聯的REST路由
5.6 可復用作用域的組合查詢
5.7 謬論和陷阱
5.8 結束語:語言、生產力和美觀
5.9 深入學習
5.10 建議的練習
第6章 SaaS的客戶端框架:JavaScdpt簡介
6.1 JavaScript:大圖景
6.2 面向Ruby程序員的客戶端JavaScript介紹
6.3 函數和構造器
6.4 文檔對象模型和jQuery
6.5 事件與回調
6.6 AJAX:異步的JavaScript和XML
6.7 測試和調試JavaScnpt與AJAX
6.8 單頁面應用和Json API
6.9 謬論和陷阱
6.10 結束語:JavaScript的昨天、今天以及明天