大型JavaScript應用最佳實踐指南
  • 推薦0
  • 收藏12
  • 瀏覽2.1K

大型JavaScript應用最佳實踐指南

Adam Boduch (作者)  黃小璐 (譯者)

  • 書  號:978-7-121-30706-5
  • 出版日期:2017-02-06
  • 頁  數:236
  • 開  本:16(185*235)
  • 出版狀態:上市銷售
  • 原書名: JavaScript at Scale
  • 原書號:9781785282157
  • 維護人:張春雨
本書將帶你設計和實現能從多個維度(如尋址能力、可配置性和性能)可伸縮的JavaScript的應用程序體系架構;了解常見的JavaScript縮放陷阱,并通過真實的解決方案和策略解決這些問題。內容包括:確定和評估應用程序的外部擴展影響力,創建構成大規模JavaScript應用程序的組件,對可擴展組件間的通信進行設計,設計一個不受限于環境的便攜的且可測試的應用程序,等等。
告別重寫 避開規模陷阱 駕馭可擴展|可伸縮
關于作者
Adam Boduch 在開發大型JavaScript應用方面有近10年的工作經驗。在轉型為前端工程師之前,他曾使用Python與Linux參與了許多大型云計算產品的構建。Adam擁有非常豐富的開發經驗,擅長處理復雜的場景,提高軟件的可擴展性。他編寫了很多JavaScript方面的書籍,其中包括 Lo-Dash Essentials,并且,他還熱衷于優化用戶體驗和性能。
Adam現居住于多倫多,是Virtustream的一名高級軟件工程師。
我想在此感謝我的媽媽和爸爸。
關于審校者
August N. Marcello III是一位充滿激情的軟件工程師,在客戶端的Web應用架構相關的設計、實現、部署方面,有著近20年的工作經驗。他專注于基于SaaS創造良好的用戶體驗,并將其傳播到Web生態系統,這無論從個人還是從專業角度來說都極具價值。對新興通用技術的熱愛以及對先進的JavaScript平臺的專注,驅動著他在技術上精益求精。在工作之余,他會參加越野跑、山地自行車騎行,或者陪伴家人和朋友。他的個人網站為:www.augustmarcello.com。
非常感謝Chuck、Mark、Eric和Adam,很榮幸能夠跟他們一起工作和學習。謝謝我的家人、朋友,還有我所經歷的一切。


Yogesh Singh畢業于印度JSS技術教育學院。他是一位全棧Web開發者,在服務端Web開發棧方面(ASP.NET以及Node.js)很有經驗,而且熟練掌握HTML、CSS以及JavaScript。
Yogesh熱愛JavaScript以及相關的庫和框架(Backbone、AngularJS、jQuery和Underscore)。
他最開始從事的是數據挖掘和數據倉庫方面的工作,在數據庫開發方面十分專業。他是MSSQL的微軟認證解決方案成員(MCSA)。
Yogesh自學能力很強,喜歡學習算法和數據結構,并在斯坦福大學Coursera上獲得了算法課的結業證明。
他曾就職于OLX India和MAQ Software,目前為Gainsight公司的全棧開發者。
業余時間,他喜歡在http://mylearning.in上寫博客。他的LinkedIn簡歷地址為https://www.linkedin.com/in/yogesh21。
感謝我的家人,朋友以及同事的支持。


Nikolay Sokolov是一名軟件工程師,他在云計算、自動化部署,還有企業軟件開發方面有著豐富的經驗?,F在就職于Tonomi(http://tonomi.com/),負責基于彈性組件模型分發云應用的自動管理包。
可通過https://twitter.com/chemikadze隨時聯系他。


Serkan Yersen是一名洛杉磯的軟件開發者。他是一些開源庫的作者,例如:ifvisible.js、underscore.py以及kwargs.js。Serkan專門從事構建大型JavaScript應用,以及為用戶廣泛的應用創建UI。2006年至2012年,就職于http://www.jotform.com/期間,他開發了一個復雜的表單生成器,供上百萬用戶使用?,F在,他就職于Home Depot和Redbeacon(http://www.redbeacon.com/),負責Web應用開發。你可以訪問他的網站:http://serkan.io/。

譯者簡介
本書翻譯工作由月影領銜的奇舞團翻譯小組承擔,由王韋華、黃小璐、黃薇負責翻譯。
王韋華
網名Aztack,前端技術專家。曾就職百度、奇虎360等國內知名互聯網公司。擁有豐富的Web前端開發經驗,擅長JavaScript、Ruby、Java、C++等語言。
個人博客:https://aztack.wang
黃小璐
畢業于華中科技大學計算機學院?,F為奇虎360軟件開發工程師。曾參與開源項目[stcjs](https://github.com/stcjs/stc)(高性能前端工作流系統)。參與翻譯了《高性能HTML5》等書。
黃薇
畢業于中山大學,于2013年加入奇舞團,近期參與了Nova.js(Web Component框架)、聲享(在線制作PPT)等項目,對大型 JavaScript 應用有濃厚的興趣和豐富的開發經驗。
以上三位譯者曾共同參與《移動Web手冊》一書的翻譯工作。
讀者可掃描以下二維碼關注奇舞團周刊。

前言
能夠一直正常運行的應用只是特例,大部分的JavaScript應用多多少少都有些問題。而這些問題產生的原因是由于我們總是習慣性地忽略可擴展性。這本書介紹了如何通過擴展前端架構來提高軟件質量。擴展JavaScript應用是一件有趣的事情,需要考慮很多因素:用戶、開發者、開發環境、瀏覽器環境等。我們的任務就是全面考慮這些因素,從而提供最佳的用戶體驗。我們要擴展什么?為何要擴展?本書將為大家解答這些問題。
本書內容
第1章,擴展JavaScript應用,介紹了何為可擴展的JavaScript應用,以及擴展JavaScript應用與擴展其他應用的區別。
第2章,可擴展性的影響因素,介紹了如何理解可擴展的需求,設計出更好的架構。
第3章,組件復合,介紹了構成架構核心的模式,以及如何以之為藍圖組合組件。
第4章,組件的通信與職責,介紹了組件之間的通信是如何制約擴展的。組件的通信模式功能有決定性作用。
第5章,尋址和導航,詳細介紹了擁有指向不同資源的URI的大型Web應用,以及如何設計才能應對不斷增長的URI數量。
第6章,用戶偏好和默認設置,介紹了設置用戶偏好的必要性,以及可配置的組件對擴展應用的重要性。
第7章,加載時間和響應速度,介紹了文件數量的增加是如何降低應用效率的。在添加新功能時,要有所舍棄,才能保證UI的響應速度。
第8章,可移植性和測試,介紹了如何編寫不依賴于特定環境的JavaScript代碼,包括創建可移植的模擬數據和測試代碼。
第9章,縮小規模,介紹了移除無用或錯誤組件對擴展系統其他部分的重要性。
第10章,處理錯誤,介紹了優秀的JavaScript架構不會因為某個組件的錯誤而崩潰。許多時候,在設計時充分考慮對錯誤的處理是成功擴展的關鍵。
閱讀本書的條件
? NodeJS
? 代碼編輯器/集成開發環境
? 一個現代Web瀏覽器
本書讀者
本書的目標讀者是對前端架構感興趣的高級JavaScript工程師。閱讀本書無須預備框架知識,但本書介紹的大部分概念都來自于框架,例如Backbone、Angular、Ember。閱讀本書需要扎實的JavaScript語言知識基礎,本書中所有的示例代碼都使用ECMAScript 6語法編寫。
約定
在閱讀本書時,你會發現許多代表不同類型信息的不同文本樣式。這里展示了一些例子及其含義詳解。
正文中的代碼、數據庫表名、文件夾名、文件名、文件后綴、路徑、URI示例、用戶輸入,以及Twitter用戶名等均按以下格式展示:“以users/31729為例。路由器應該找到一個模式,能夠匹配該字符串,并能夠提取出變量31729”。
代碼塊按以下格式展示:
// 渲染試圖的各個部分。
// 各部分可能有renderer,也可能沒有。
// 但不管有沒有renderer,內容都會被返回。

警告和重要注解都會按此格式展示。

提示和技巧都會按此格式展示。
下載示例代碼
你可以從http://www.mmzxjp.buzz下載所有已購買的博文視點書籍的示例代碼文件。
勘誤表
雖然我們已經盡力確保內容的準確性,但錯誤仍然可能存在。如發現任何錯誤,可登錄博文視點官網http://www.mmzxjp.buzz 提交勘誤信息。一旦勘誤信息被本書作者或編輯確認,即可獲得博文視點獎勵積分,可用于兌換電子書。讀者可以隨時瀏覽圖書頁面,查看已發布的勘誤信息。

目錄

目錄 閱讀
第1章 擴展JavaScript 應用
第2章 可擴展性的影響因素
第3章 組件組合
第4章組建的通信與職責
第5章 尋址和導航
第6章 用戶偏好和默認設置
第7章 加載時間和響應速度
第8章 可移植性和測試
第9章 縮小規模
第10章 處理錯誤

讀者評論

  • 示例代碼在哪里

    aprilfall發表于 2017/4/24 2:18:12
    • 在頁面右側的“下載資源”處。

      張春雨發表于 2017/4/24 14:42:20
    • @張春雨 thank you

      aprilfall發表于 2017/4/24 22:00:00
  • 所有電子書都不能到付款頁?神馬情況?

    Jack Che發表于 2017/3/23 20:18:49
    • 可以跳轉到支付頁面,請問您用的什么瀏覽器?

      陳曉猛發表于 2017/3/24 9:44:10
    • @陳曉猛 chrome

      Jack Che發表于 2017/3/24 13:25:50
    • @Jack Che 我看您已經購買成功了啊

      陳曉猛發表于 2017/3/24 14:38:17

下載資源

電子書版本

  • Epub
  • Mobi

相關博文

  • 影響JavaScript應用可擴展性因素

    影響JavaScript應用可擴展性因素

    管理員賬號 2017-02-20

    小編說:JavaScript 應用變得越來越龐大。這是因為使用JavaScript 能做的事情遠比我們大多數人所需求的要多得多。我們不能僅因為技術上可行,就去考慮軟件系統的擴展問題。為一個不需要擴展的系統增加擴展性是不值得的,尤其對最終...

    管理員賬號 2017-02-20
    211 0 0 0
  • 可擴展架構取舍

    可擴展架構取舍

    管理員賬號 2017-02-28

    小編說:“架構”是前端開發中一直以來都缺少的。由于近幾年Web 應用日趨復雜,前端架構開始流行起來。成熟的工具使得開發人員可以針對要解決的問題設計出可擴展的架構。 構建可擴展的軟件,可以從很多角度來思考軟件架構。但是如果每個角度都去...

    管理員賬號 2017-02-28
    464 0 0 0

相關圖書

基于MVC的JavaScript Web富應用開發

Alex MacCaw(亞歷克斯·麥卡勞) (作者) 李晶 (譯者)

在琳瑯滿目的Web富客戶端應用實現方式中,JavaScript在其中巧妙地穿針引線,扮演著"黏合劑”的作用。JavaScript與各種瀏覽器插件技術(Silve...

¥39.00

Learning TypeScript中文版

Remo H. Jansen (作者) 龍逸楠 (譯者)

本書首先介紹了TypeScript 的基本語法和基本的自動化工作流配置方法,然后從面向對象入手,著重介紹了面向對象的概念和它的一些最佳實踐,并結合例子講解了如何...

¥69.00

實戰ES2015:深入現代JavaScript 應用開發

甘超陽 (作者)

JavaScript在ES2015標準中的表現,以及利用ES2015中新特性在JavaScript應用開發中的實踐。以清晰的思路說明ES2015的詳細特性和意義...

¥49.00

Effective Javascript:編寫高質量JavaScript代碼的68個有效方法 英文版

(美)David Herman(大衛·赫爾曼) (作者) 無 (譯者)

本書由資深 JavaScript 技術專家 David Herman 所著。書中基于 JavaScript 標準的新版本前所未有地闡明了 JavaScript ...

¥65.00

高性能JavaScript

Nicholas C. Zakas(尼古拉斯.澤卡斯) (作者) 丁琛 丁琛 (譯者)

瀏覽器解釋執行JavaScript 程序時不會對代碼進行優化,因此代碼的結構極大地影響著程序的運行速度。本書分享高效的代碼結構和開發模式,幫助讀者獲得更好的程序...

¥39.00
国际官方棋牌下载中心