Software Design by Example: A Tool-Based Introduction with JavaScript

Wilson, Greg

  • 出版商: CRC
  • 出版日期: 2022-12-29
  • 售價: $5,140
  • 貴賓價: 9.5$4,883
  • 語言: 英文
  • 頁數: 329
  • 裝訂: Hardcover - also called cloth, retail trade, or trade
  • ISBN: 1032399678
  • ISBN-13: 9781032399676
  • 相關分類: JavaScript
  • 海外代購書籍(需單獨結帳)

商品描述

The best way to learn design in any field is to study examples, and some of the best examples of software design come from the tools programmers use in their own work. Software Design by Example: A Tool-Based Introduction with JavaScript therefore builds small versions of the things programmers use in order to demystify them and give some insights into how experienced programmers think. From a file backup system and a testing framework to a regular expression matcher, a browser layout engine, and a very small compiler, we explore common design patterns, show how making code easier to test also makes it easier to re-use, and help readers understand how debuggers, profilers, package managers, and version control systems work so that they can use them more effectively.

This material can be used for self-paced study, in an undergraduate course on software design, or as the core of an intensive weeklong workshop for working programmers. Each chapter has a set of exercises ranging in size and difficulty from half a dozen lines to a full day's work. Readers should be familiar with the basics of modern JavaScript, but the more advanced features of the language are explained and illustrated as they are introduced.

All the written material in this project can be freely reused under the terms of the Creative Commons - Attribution license, while all of the software is made available under the terms of the Hippocratic License. All proceeds from sale of this book will go to support the Red Door Family Shelter in Toronto.

Features

  • Teaches software design by showing programmers how to build the tools they use every day
  • Each chapter includes exercises to help readers check and deepen their understanding
  • All the example code can be downloaded, re-used, and modified under an open license

商品描述(中文翻譯)

學習任何領域的設計最好的方法是研究實例,而軟體設計的最佳實例之一來自程式設計師在自己的工作中使用的工具。因此,《以 JavaScript 為例的軟體設計:基於工具的入門》建立了程式設計師使用的工具的簡化版本,以揭開神秘面紗,並提供一些有關經驗豐富的程式設計師思考方式的見解。從檔案備份系統和測試框架到正則表達式匹配器、瀏覽器佈局引擎和非常小的編譯器,我們探索常見的設計模式,展示如何使程式碼更易於測試也更易於重複使用,並幫助讀者了解調試器、性能分析器、套件管理器和版本控制系統的工作原理,以便更有效地使用它們。

這些材料可以用於自主學習,也可以用於大學軟體設計課程,或作為為期一週的專門為工作中的程式設計師舉辦的密集工作坊的核心內容。每個章節都有一系列練習,範圍從幾行程式碼到一整天的工作,難度各不相同。讀者應該熟悉現代 JavaScript 的基礎知識,但在介紹時,更高級的語言特性也會進行解釋和示範。

本項目中的所有文字材料都可以根據創作共用 - 署名許可條款自由重複使用,而所有軟體則根據 Hippocratic License 的條款提供。本書的銷售收益將全部用於支持多倫多的紅門家庭收容所。

特點:
- 通過展示程式設計師如何構建他們每天使用的工具,教授軟體設計
- 每個章節都包含練習,幫助讀者檢查和加深他們的理解
- 所有示例程式碼都可以根據開放許可條款進行下載、重複使用和修改

作者簡介

Greg Wilson has worked in industry and academia for 35 years, and is the author, coauthor, or editor of several books, including Beautiful Code, The Architecture of Open Source Applications, JavaScript for Data Science, Teaching Tech Together, and Research Software Engineering with Python. He is the co-founder and first executive director of Software Carpentry and received ACM SIGSOFT's Influential Educator Award in 2020.

作者簡介(中文翻譯)

Greg Wilson在工業界和學術界工作了35年,是幾本書的作者、合著者或編輯,包括《Beautiful Code》、《The Architecture of Open Source Applications》、《JavaScript for Data Science》、《Teaching Tech Together》和《Research Software Engineering with Python》。他是Software Carpentry的聯合創始人和首任執行董事,在2020年獲得了ACM SIGSOFT的影響力教育家獎。