-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Angular 2開發實戰 基于TypeScript

( 簡體 字)
作者:[美] Yakov Fain Anton Moiseev 著 類別:1. -> 程式設計 -> 網路編程 -> AngularJS
譯者:顏宇 黃金勝 譯
出版社:清華大學出版社Angular 2開發實戰 基于TypeScript 3dWoo書號: 48190
詢問書籍請說出此書號!

缺書
NT售價: 400

出版日:1/1/2018
頁數:392
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302487159
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

Angular 2應用程序能夠支持使用兩種JavaScript語法(ES5和ES6)進行開發,同樣也支
持使用Dart或TypeScript進行開發。框架本身使用TypeScript開發,在本書中,我們同樣使
用TypeScript編寫所有代碼示例。在附錄B中的“為什么使用TypeScript編寫Angular應用程
序?”一節中,解釋了選擇TypeScript進行開發的理由。

我們兩個都是開發者,編寫這本書也是為了幫助與我們一樣的開發者。我們不僅使用
最基礎的代碼示例解釋框架的特性,還循序漸進地展示如何通過本書搭建一個單頁面的在
線拍賣應用程序。

當還在編寫和修改本書時,我們使用本書的代碼示例開展了幾次培訓,這使得我們能
夠在早期就得到對本書內容的反饋(這些絕對是正面的反饋)。我們真的希望你會喜歡學習
Angular 2的過程。

本書涵蓋了Angular 2正式版的內容。

如何閱讀本書

在早期的草稿中,本書是從ECMAScript 6和TypeScript開始講解的。幾位審稿人建
議我們把這部分內容移到附錄中,以便讀者能夠盡快開始學習Angular。我們聽取了這個
建議,但如果你并不熟悉ECMAScript 6和TypeScript的語法,可以首先閱讀附錄部分的內
容,這能幫助你更容易地理解每章的代碼示例。

學習路線圖

本書由10章和兩個附錄組成。

第1章是對Angular 2架構的高級概述,簡要總結了流行的JavaScript框架和庫,并介紹
了將從第2章開始開發的示例:在線拍賣應用程序。

你將使用TypeScript開發示例應用程序。TypeScript是JavaScript的一個超集,附錄B能



夠讓你快讀掌握這門優秀的語言。你不僅將學習如何編寫類、接口和泛型,還會學習如何
把TypeScript編譯成可以被任何瀏覽器使用的JavaScript(ECMAScript 5)。TypeScript實現了
最新的ECMAScript 6(附錄A中會介紹)規范中大部分的語法以及ECMAScript即將發布的規
范中的一些語法。

第2章將引導你開發一些簡單的Angular 2應用程序,你將創建首個Angular組件。該章
介紹如何使用SystemJS模塊加載器,并提供我們自己開發的Angular種子工程,這個工程
是本書中所有示例應用程序的基礎。在第2章結尾處,將會創建在線拍賣應用程序的第一
版首頁。

第3章將介紹Angular路由,它為單頁面應用程序提供了一種彈性的路由機制。將會介
紹如何在父組件和子組件中配置路由,如何在路由之間傳遞數據,如何延遲加載模塊。在
第3章結尾處,將會以多組件的方案重構在線拍賣應用程序,并為其添加路由功能。

第4章將介紹依賴注入(Dependency Injection)設計模式,以及Angular是如何實現該模
式的。你將熟悉provider的概念,provider能夠指定如何實例化注入對象。在新版的在線拍
賣程序中,使用依賴注入把數據填充到產品詳情視圖中。

在第5章將討論不同種類的數據綁定,介紹利用observable數據流的響應式編程,以及
如何使用管道。在第5章結尾處將會開發新版本的在線拍賣應用程序,為其添加observable
事件流,用來在首頁過濾特色產品。

第6章介紹如何以松耦合的方式實現組件間的相互通信。我們將會討論組件的輸入和
輸出屬性、中介者模式、組件的聲明周期。第6章還包括對Angular變更檢測機制的高級概
述,并為在線拍賣系統增加評分功能。

第7章介紹如何處理Angular的表單。首先會介紹Forms API的基礎知識,隨后討論
表單的驗證,并為在線拍賣應用程序創建一個新的版本,在其中的搜索組件中實現表單
驗證功能。

第8章解釋Angular客戶端應用程序如何使用HTTP和WebSocket協議與服務器端通信,
并給出了示例。服務器應用程序可以使用Node.js和Express框架創建,之后在Node服務
器端部署Angular在線拍賣應用程序。前端頁面通過HTTP和WebSocket協議與服務器端的
Node.js通信。

第9章將介紹單元測試,其中覆蓋了Jasmine的基礎知識以及Angular測試庫的內容。從
中你能夠學會如何測試服務、組件和路由,以及如何配置和使用Karma運行測試用例,并
為在線拍賣應用程序實現若干單元測試用例。

第10章是關于自動構建以及部署流程的介紹,將介紹如何使用Webpack打包工具壓縮
和打包代碼用于部署,還介紹如何使用Angular CLI生成項目并部署。在線拍賣應用程序部
署版本的大小會從5.5MB(開發環境)降低到350KB(生產環境)。

附錄A將會使你熟悉ECMAScript 2015( 也叫ES6) 所引入的新語法。附錄B是對
TypeScript 語言的介紹。

代碼約定和下載

本書涵蓋了許多示例及源代碼,有一些在被編號的代碼清單中,另外一些穿插在正文
中。無論代碼在上面兩處中的哪處出現,源代碼都會按照固定寬度的字體進行格式化。在
很多情況下,原始的源代碼已經被重新格式化,添加了換行符并根據需要進行縮進,以適
應每一頁的寬度。在某些特殊情況下,換行和縮進仍然無法滿足格式要求,此時將在代碼
清單中使用行繼續符號()。另外當在正文中描述代碼時,通常會從代碼清單中刪除源代
碼的注釋。那些帶有注釋的代碼清單,則突出了相應概念的重要性。讀者也可以通過掃描封底的二維碼來用手機下載。

本書作者在GitHub上同樣維護了一個倉庫,其中包括了所有示例的源代碼。如果本書的代碼在未來不適用于Angular發布的
新版本,可以在GitHub倉庫中提交問題,本書作者將會解決這些問題。

作者在線

購買本書后可以免費訪問由Manning出版社運營的一個非公開論壇,讀者可以在其
中對本書進行評論,咨詢技術問題,從作者和其他用戶那里獲得幫助。在瀏覽器中打開即可訪問和訂閱論
壇。從該頁面可以了解到一旦注冊成功后,如何進入論壇,可以獲得哪些幫助以及論壇上
的行為規范。

Manning 出版社承諾為讀者提供一個平臺,從而在讀者之間以及讀者和作者之間提供
有意義的交流渠道。作者并不會對參與交流的程度做任何承諾,他們對AO 論壇的貢獻完
全出于自愿(且是無償的)。建議讀者向作者提出一些有挑戰性的問題,這才能讓作者有興
趣回答。
內容簡介:

《Angular 2開發實戰 基于TypeScript》幫助熟練使用Angular 1或其他Web框架的開發者掌
握Angular 2的使用。首先從一個在線拍賣應用程序開始,探
索Angular 2是如何工作的。隨著學習的深入,將學習如何使
用TypeScript編寫能夠類型自我感知(type-aware)的類、接口以
及泛型。《Angular 2開發實戰 基于TypeScript》注重實踐,涵蓋了在真實應用場景中進行開發
所需要關注的問題,例如數據和視圖、用戶與表單的交互、
與服務器端通信以及如何測試和部署Angular 2應用程序。
主要內容
◆ 設計和構建模塊化的應用程序
◆ 將TypeScript轉碼為目前通用的JavaScript
◆ 使用現代的JavaScript工作流工具,例如npm、Karma和
Webpack
《Angular 2開發實戰 基于TypeScript》適用于具備JavaScript開發經驗的中級Web開發人
員,并不要求讀者具備TypeScript或AngularJS使用經驗。
目錄:

第1章Angular2介紹1
1.1JavaScript框架和庫的示例1
1.1.1重量級框架2
1.1.2輕量級框架2
1.1.3庫2
1.1.4什么是Node.js4
1.2AngularJS高級概述4
1.3Angular高級概述7
1.3.1簡化代碼7
1.3.2性能提升12
1.4Angular開發者工具13
1.5如何使用Angular16
1.6在線拍賣示例介紹17
1.7本章小結19
第2章Angular入門20
2.1第一個Angular應用程序20
2.1.1TypeScript版本的HelloWorld21
2.1.2ES5版本的HelloWorld24
2.1.3ES6版本的HelloWorld26
2.1.4啟動應用程序27
2.2Angular應用程序的構建塊28
2.2.1模塊28
2.2.2組件29
2.2.3指令31
2.2.4數據綁定簡介32
2.3通用模塊加載器SystemJS32
2.3.1模塊加載器概覽33
2.3.2模塊加載器與<script>標簽33
2.3.3SystemJS入門34
2.4選擇包管理器39
2.4.1對比npm和jspm40
2.4.2使用npm開始一個Angular項目41
2.5動手實踐:開始在線拍賣應用程序47
2.5.1初始化項目設置48
2.5.2開發首頁49
2.5.3啟動在線拍賣應用程序56
2.6本章小結57
第3章使用Angular路由導航58
3.1路由基礎58
3.1.1定位策略60
3.1.2客戶端導航的構建塊61
3.1.3使用navigate()導航到路由67
3.2向路由傳遞數據69
3.2.1從ActivatedRoute對象中提取參數69
3.2.2傳遞靜態數據給路由72
3.3子路由73
3.4守護路由79
3.5開發一個具有多個路由插座的單頁面應用84
3.6將應用程序分解到模塊中87
3.7延遲加載模塊89
3.8實踐:為在線拍賣應用程序添加導航91
3.8.1創建ProductDetailComponent92
3.8.2創建HomeComponent和代碼重構93
3.8.3簡化ApplicationComponent94
3.8.4將RouterLink添加到ProductItemComponent95
3.8.5修改根模塊,添加路由97
3.8.6運行在線拍賣應用程序97
3.9本章小結98
第4章依賴注入99
4.1依賴注入模式和控制反轉模式99
4.1.1依賴注入模式100
4.1.2控制反轉模式100
4.1.3依賴注入的好處100
4.2注入器和provider103
4.3使用AngularDI的示例應用程序106
4.3.1注入產品服務106
4.3.2注入Http服務109
4.4輕松切換可注入(組件/對象)110
4.4.1使用useFactory和useValue屬性聲明providers113
4.4.2使用OpaqueToken116
4.5注入器的層級結構117
4.6實踐:在在線拍賣應用程序中使用DI119
4.6.1更改代碼,將產品ID作為參數傳遞122
4.6.2修改ProductDetailComponent122
4.7本章小結126
第5章綁定、observable和管道127
5.1數據綁定127
5.1.1事件綁定128
5.1.2屬性綁定和特性綁定129
5.1.3模板中的綁定133
5.1.4雙向數據綁定136
5.2響應式編程和observable138
5.2.1什么是observable和觀察者139
5.2.2observable事件流141
5.2.3取消observables145
5.3管道148
5.4實踐:在線拍賣應用程序中
產品的過濾功能151
5.5本章小結154
第6章實現組件通信156
6.1組件間通信156
6.1.1輸入和輸出屬性157
6.1.2Mediator模式163
6.1.3使用ngContent在運行時修改模板167
6.2組件生命周期172
6.3變更檢測高級概述178
6.4如何暴露子組件中的API180
6.5實踐:為在線拍賣應用程序添加評分功能182
6.6本章小結189
第7章使用表單190
7.1HTML表單概述191
7.1.1標準瀏覽器功能191
7.1.2AngularFormsAPI193
7.2模板驅動表單194
7.2.1指令概述194
7.2.2豐富HTML表單196
7.3響應式表單198
7.3.1表單模型198
7.3.2表單指令199
7.3.3重構示例表單203
7.3.4使用FormBuilder204
7.4表單驗證205
7.5動手實踐:給搜索表單添加驗證214
7.5.1修改根模塊以添加FormsAPI支持214
7.5.2將一個類別列表添加到SearchComponent215
7.5.3創建表單模型216
7.5.4重構模板216
7.5.5實現onSearch()方法218
7.5.6啟動在線拍賣應用程序218
7.6本章小結218
第8章使用HTTP和WebSocket與服務器交互219
8.1簡述Http對象的API219
8.2使用Node和TypeScript創建Web服務器222
8.2.1創建一臺簡單的Web服務器222
8.2.2提供JSON225
8.2.3TypeScript實時重新編譯與代碼重新加載226
8.2.4添加提供產品的RESTfulAPI227
8.3將Angular與Node結合在一起229
8.3.1服務器上的靜態資源229
8.3.2使用Http對象進行GET請求232
8.3.3在模板中使用AsyncPipe展開observables234
8.3.4將HTTP注入到服務中235
8.4通過WebSocket進行客戶端-服務器通信239
8.4.1從Node服務器推送數據239
8.4.2將WebSocket轉換成observable243
8.5動手實踐:實現產品搜索和出價通知249
8.5.1使用HTTP實現產品搜索250
8.5.2使用WebSocket廣播拍賣出價254
8.6本章小結258
第9章Angular應用程序單元測試259
9.1了解Jasmine260
9.1.1測試什么262
9.1.2如何安裝Jasmine262
9.2Angular測試庫都包括了什么264
9.2.1測試服務265
9.2.2使用路由測試導航266
9.2.3測試組件267
9.3測試天氣示例應用程序267
9.3.1配置SystemJS269
9.3.2測試天氣路由270
9.3.3測試天氣服務272
9.3.4天氣測試組件275
9.4使用Karma運行測試278
9.5實踐:在線拍賣應用程序單元測試281
9.5.1測試ApplicationComponent283
9.5.2測試ProductService283
9.5.3測試StarsComponent284
9.5.4運行測試287
9.6本章小結288
第10章使用Webpack打包并部署應用程序289
10.1了解Webpack291
10.1.1使用Webpack的HelloWorld292
10.1.2如何使用加載器296
10.1.3如何使用插件300
10.2為Angular創建基本的Webpack配置300
10.2.1npmrunbuild303
10.2.2npmstart305
10.3創建開發和生產配置305
10.3.1開發(環境)配置306
10.3.2生產(環境)配置307
10.3.3自定義的類型定義文件309
10.4AngularCLI概述312
10.4.1用AngularCLI啟動新項目312
10.4.2CLI命令313
10.5動手實踐:使用Webpack部署在線拍賣應用程序314
10.5.1啟動Node服務器315
10.5.2啟動在線拍賣應用程序的客戶端316
10.5.3使用Karma運行測試319
10.6本章小結322
附錄AECMAScript6概述323
附錄B作為Angular應用程序語言的TypeScript362
序: