編輯推薦
適讀人群 :程序員、軟件架構師 《Rails敏捷開發》榮獲Jolt技術圖書大奬。是深受歡迎的Rails開發教程。適閤Ruby和Rails的初級、中級讀者閱讀,並可作為開發人員的參考手冊。
內容簡介
《Rails敏捷開發》榮獲Jolt技術圖書大奬。本書以講解“購書網站”案例為主綫,逐步介紹Rails的內置功能。全書分為3部分,第yi部分介紹Rails的安裝、應用程序驗證、Rails框架的體係結構,以及Ruby語言知識;第二部分用迭代方式構建應用程序,然後依據敏捷開發模式開展測試,後用Capistrano完成部署;第三部分補充日常實用的開發知識。本書既有直觀的示例,又有深入的分析,同時涵蓋瞭Web開發各方麵的知識,堪稱一部內容全麵而又深入淺齣的佳作。第5版增加瞭關於Rails 5和Ruby 2.2新特性和佳實踐的內容。
作者簡介
Sam Ruby 是W3C HTML工作組的聯閤主席,曾為Apache軟件基金會(Apache Software Foundation)的多個開源項目做齣積極貢獻。他也是IBM新興技術組(Emerging Technologies Group of IBM)的高級技術專傢。
Dave Thomas 是“敏捷宣言”的起草人之一,也是《Programming Ruby》的作者。作為活躍的Rails開發者,他對Rails有著深刻的理解。
David Heinemeier Hansson 是Rails框架的創造者。
精彩書評
本書的內容組織得非常齣色。前兩部分介紹如何構建Rails應用,演示項目簡單易懂,全麵展示瞭Rails為開發者創造的價值。第三部分的很多議題也很有價值。總而言之,這是一本好書,值得繼續嚮Rails新手推薦!
? Jeff Holland
Ackmann & Dickenson公司高級軟件工程師
目錄
第一部分 新手入門 1
第1章 安裝Rails 3
1.1 在Cloud9上安裝Rails 4
1.2 在虛擬機上安裝Rails 6
1.3 在Windows上安裝Rails 8
1.4 在Mac OSX上安裝Rails 11
1.5 在Linux上安裝Rails 12
1.6 Rails版本的選擇 14
1.7 設置開發環境 14
1.8 Rails和數據庫 18
1.9 本章所學 19
第2章 牛刀小試 21
2.1 新建Rails應用 21
2.2 Hello, Rails! 24
2.3 把頁麵連接起來 30
2.4 如果發生錯誤 33
2.5 本章所學 36
2.6 練習題 36
2.7 清理工作 37
第3章 Rails應用的架構 39
3.1 模型、視圖和控製器 39
3.2 Rails對模型的支持 42
3.3 Action Pack:視圖和控製器 44
第4章 Ruby簡介 47
4.1 Ruby是麵嚮對象的語言 47
4.2 數據類型 49
4.3 控製邏輯 53
4.4 組織結構 56
4.5 對象的序列化 59
4.6 綜閤應用 59
4.7 Ruby慣用法 60
第二部分 構建一個應用 63
第5章 Depot應用 65
5.1 增量開發 65
5.2 Depot應用的功能 66
5.3 開始編寫代碼 70
第6章 任務A:創建應用 71
6.1 迭代A1:實現産品維護功能 71
6.2 迭代A2:美化産品列錶 78
6.3 本章所學 84
6.4 練習題 85
第7章 任務B:驗證和單元測試 87
7.1 迭代B1:驗證! 87
7.2 迭代B2:模型的單元測試 92
7.3 本章所學 99
7.4 練習題 100
第8章 任務C:實現産品目錄頁麵 101
8.1 迭代C1:創建産品目錄列錶 101
8.2 迭代C2:添加頁麵布局 105
8.3 迭代C3:通過輔助方法格式化價格 110
8.4 迭代C4:控製器的功能測試 111
8.5 迭代C5:緩存局部結果 113
8.6 本章所學 115
8.7 練習題 116
第9章 任務D:創建購物車 117
9.1 迭代D1:查找購物車 117
9.2 迭代D2:把産品放入購物車 118
9.3 迭代D3:添加按鈕 121
9.4 本章所學 126
9.5 練習題 127
第10章 任務E:更智能的購物車 129
10.1 迭代E1:創建更智能的購物車 129
10.2 迭代E2:錯誤處理 135
10.3 迭代E3:完成購物車的開發 139
10.4 本章所學 143
10.5 練習題 143
第11章 任務F:添加少量Ajax代碼 145
11.1 迭代F1:移動購物車 146
11.2 迭代F2:創建基於Ajax的購物車 153
11.3 迭代F3:突齣顯示更改 157
11.4 迭代F4:隱藏空購物車 160
11.5 迭代F5:通過Action Cable廣播更改 164
11.6 本章所學 167
11.7 練習題 168
第12章 任務G:去結算! 169
12.1 迭代G1:獲取訂單 169
12.2 迭代G2:Atom訂閱源 183
12.3 本章所學 186
12.4 練習題 186
第13章 任務H:發送電子郵件 189
13.1 迭代H1:發送確認郵件 189
13.2 迭代H2:應用的集成測試 196
13.3 本章所學 201
13.4 練習題 201
第14章 任務I:用戶登錄 203
14.1 迭代I1:添加用戶 203
14.2 迭代I2:用戶身份驗證 207
14.3 迭代I3:訪問限製 213
14.4 迭代I4:在側邊欄中添加幾個管理鏈接 215
14.5 本章所學 219
14.6 練習題 219
第15章 任務J:國際化 221
15.1 迭代J1:區域的選擇 222
15.2 迭代J2:在綫商店店麵的翻譯 226
15.3 迭代J3:結算頁麵的翻譯 233
15.4 迭代J4:添加區域設置選擇器 239
15.5 本章所學 241
15.6 練習題 241
第16章 任務K:部署上綫 243
16.1 迭代K1:使用Phusion Passenger和MySQL部署 245
16.2 迭代K2:通過Capistrano遠程部署 252
16.3 迭代K3:檢查部署後的應用 258
16.4 本章所學 260
16.5 練習題 261
第17章 Depot應用開發迴顧 263
17.1 Rails中的概念 263
17.2 記錄已完成的工作 266
第三部分 深入探索Rails 267
第18章 Rails內部概覽 269
18.1 目錄結構 269
18.2 命名約定 277
18.3 本章所學 280
第19章 Active Record 281
19.1 定義數據 281
19.2 識彆和關聯記錄 286
19.3 創建、讀取、更新和刪除(CRUD) 290
19.4 參與監控過程 304
19.5 事務 310
19.6 本章所學 314
第20章 Action Dispatch和Action Controller 315
20.1 把請求分派給控製器 316
20.2 處理請求 325
20.3 跨請求的對象和操作 337
20.4 本章所學 345
第21章 Action View 347
21.1 使用模闆 347
21.2 生成錶單 349
21.3 處理錶單 352
21.4 在Rails應用中上傳文件 354
21.5 使用輔助方法 357
21.6 利用布局和局部模闆減少維護投入 364
21.7 本章所學 372
第22章 遷移 373
22.1 創建和運行遷移 373
22.2 遷移詳解 376
22.3 管理錶 380
22.4 高級遷移技術 385
22.5 遷移的問題 388
22.6 在遷移外部處理模式 389
22.7 本章所學 390
第23章 非瀏覽器應用 391
23.1 使用Active Record開發獨立應用 391
23.2 使用Active Support編寫庫函數 392
23.3 本章所學 397
第24章 Rails的依賴 399
24.1 使用Builder生成XML 399
24.2 使用ERB生成HTML 401
24.3 使用Bundler管理依賴 403
24.4 使用Rack與Web服務器交互 406
24.5 使用Rake自動執行任務 409
24.6 Rails依賴概覽 411
24.7 本章所學 414
第25章 Rails插件 415
25.1 使用Active Merchant處理信用卡 415
25.2 使用Haml美化標記 417
25.3 分頁 420
25.4 本章所學 422
25.5 在RailsPlugins.org中尋找更多插件 422
第26章 長路漫漫 425
附錄A 參考書目 427
索引 429
精彩書摘
《Rails 5敏捷開發》是快速掌握Rails開發的佳資源。
? Prathamesh Sonpatki
BigBinary公司總監,Rails問題審核團隊成員
不管使用哪種語言進行Web開發,本書都值得一看!
? Charles Stran
The Blaze公司産品工程與設計總監
這本書的新版依然很棒,在Rails開發時我反復參考。它是關於Rails開發的佳圖書之一。
? Stephen Orr
Siftware公司高級開發工程師
前言/序言
如果說Rails是世界上開發效率高的Web開發框架,恐怕沒有人會有異議。Rails以其“約定勝於配置”的先進設計理念和對Ruby語言元編程能力的嫻熟應用,創造瞭Web開發框架曆史上的一個奇跡。從開始流行至今,Rails一直都是其他語言開發框架的模仿對象,例如PHP語言的Yii框架、Python語言的Django框架,等等。一直被模仿,從未被超越,這句話放在Rails身上真是恰如其分。
從商業應用的角度看,互聯網從興起到現在已經經曆瞭Web 1.0、Web 2.0和移動互聯網時代,正在進入人工智能和物聯網時代。而移動互聯網本身經曆瞭2G、3G和4G時代,即將進入5G時代。未來,移動互聯網仍將是重要的基礎設施和商業競爭的主戰場,因此Web應用不僅不會走嚮夕陽薄暮,反而會迎來一個更加蓬勃的春天。在這樣一個背景下,Rails將繼續成為程序員手中的利器,幫助創業者和商業公司在時代潮頭橫刀立馬。
作為Ruby China社區(https://ruby-china.org)的用戶,譯者一直為國內Ruby社區融洽的氛圍和高質量的討論內容而感到慶幸不已,同時也想盡自己的綿薄之力迴饋社區。對於Rails程序員來說,入門和提高都不是一件易事,這不僅因為Ruby語言錶達能力極強、靈活多變,更因為Rails本身功能完備、包羅萬象。可以說,Rails開發就像演奏音樂,既可以行雲流水,也可以凝滯生澀,強者以一當十、遊刃有餘,弱者步履蹣跚、漏洞百齣,兩者高下立判。因此,學習Rails尤其需要名師和秘籍,不僅要領新手入門、扶上馬、送一程,更要能幫助開發者掌握要領、理清思路、拓寬視野,為繼續修行提高指明方嚮、注入動力。《Rails 5敏捷開發(第5版)》正是這樣一本絕世好書,入門提高兼宜。我們也為能有機會翻譯這樣一本好書而不勝欣喜。
在策劃和翻譯本書的過程中,華中科技大學齣版社的徐定翔老師和Ruby China社區的各位同仁給予瞭熱情鼓勵和實際幫助,在此一並錶示感謝。同時也要感謝傢人的理解和包容,正是在你們的支持下,長達數月的翻譯過程纔能終走嚮勝利的長徵,讓一切的艱辛和付齣都有瞭迴報。
本書承濛大疆Ruby技術團隊的審校,他們為本書譯稿提供瞭眾多寶貴意見,特此感謝!當然,書中若仍有不當之處,所有責任都在譯者自身。
希望譯者的工作成果能夠為大傢學習Rails助一臂之力。後,以一句結語和大傢共勉:學習Rails,永遠在路上!
譯 者
2017年9月10日
Rails 5敏捷開發 epub pdf mobi txt 電子書 下載 2024
Rails 5敏捷開發 下載 epub mobi pdf txt 電子書