Software Design for Flexibility: How to Avoid Programming Yourself Into a Corner (Hardcover)
暫譯: 靈活性軟體設計:如何避免將自己編程到死胡同
Hanson, Chris, Sussman, Gerald Jay
- 出版商: MIT
- 出版日期: 2021-03-09
- 售價: $2,050
- 貴賓價: 9.5 折 $1,948
- 語言: 英文
- 頁數: 448
- 裝訂: Hardcover - also called cloth, retail trade, or trade
- ISBN: 0262045494
- ISBN-13: 9780262045490
-
相關分類:
Design Pattern
-
相關翻譯:
軟件彈性設計:如何避免陷入程式設計困境 (簡中版)
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
C++ Primer, 4/e (中文版)$990$891 -
Structure and Interpretation of Computer Programs, 2/e (Paperback)$2,800$2,660 -
Hacker's Delight, 2/e (Hardcover)$2,330$2,214 -
透視 C語言指標-深度探索記憶體管理核心技術 (Understanding and Using C Pointers)$480$379 -
The Oregon Experiment (Hardcover)$2,500$2,375 -
自己動手寫 CPU$620$490 -
Arduino 官方正版 Genuino 101$1,700$1,700 -
Computer Systems: A Programmer's Perspective, 3/e (IE-Paperback)$2,980$2,920 -
The Reasoned Schemer (Paperback)$1,600$1,520 -
Raspberry Pi 3 Model B+ (UK製)$4,620$4,389 -
The Manga Guide to Cryptography$1,040$988 -
The Little Typer (Paperback)$2,080$1,976 -
晉昇軟體最高殿堂:Jenkins2 持續整合大師之路$600$474 -
$1,320Deep Learning with JavaScript: Neural Networks in Tensorflow.Js -
JavaScript 技術手冊$560$476 -
$1,584Microservices Security in Action -
Python × Network 一拍即合:自動化、程式化和 DevOps 的一站式解決方案 (Mastering Python Networking, 3/e)$780$608 -
$2,070Multithreaded JavaScript: Concurrency Beyond the Event Loop -
Real-World Cryptography (Paperback)$2,100$1,995 -
Structure and Interpretation of Computer Programs: JavaScript Edition (Paperback)$2,680$2,546 -
ChatGPT 開發手冊 - 用 OpenAI API ‧ LangChain ‧ Embeddings 設計 Plugin、LINE/Discord bot、股票分析與客服自動化助理$750$593 -
$1,767Functional Design: Principles, Patterns, and Practices (Paperback) -
React 思維進化:一次打破常見的觀念誤解,躍升專業前端開發者(iThome鐵人賽系列書)【平裝】$750$638 -
$2,232Ai-Assisted Programming: Better Planning, Coding, Testing, and Deployment (Paperback) -
OpenTelemetry 入門指南:建立全面可觀測性架構(iThome鐵人賽系列書)【軟精裝】$750$585
相關主題
商品描述
Strategies for building large systems that can be easily adapted for new situations with only minor programming modifications.
Time pressures encourage programmers to write code that works well for a narrow purpose, with no room to grow. But the best systems are evolvable; they can be adapted for new situations by adding code, rather than changing the existing code. The authors describe techniques they have found effective--over their combined 100-plus years of programming experience--that will help programmers avoid programming themselves into corners.
The authors explore ways to enhance flexibility by:
Organizing systems using combinators to compose mix-and-match parts, ranging from small functions to whole arithmetics, with standardized interfaces
Augmenting data with independent annotation layers, such as units of measurement or provenance
Combining independent pieces of partial information using unification or propagation
Separating control structure from problem domain with domain models, rule systems and pattern matching, propagation, and dependency-directed backtracking
Extending the programming language, using dynamically extensible evaluators
商品描述(中文翻譯)
建立大型系統的策略,使其能夠輕鬆適應新情況,只需進行小幅的程式修改。
時間壓力促使程式設計師撰寫適用於狹窄目的的程式碼,卻沒有成長的空間。但最佳系統是可演變的;它們可以通過添加程式碼來適應新情況,而不是改變現有的程式碼。作者描述了他們在超過100年的程式設計經驗中發現的有效技術,這些技術將幫助程式設計師避免將自己編程到死胡同中。
作者探討了增強靈活性的方法,包括:
使用組合子組織系統,以組合可混合的部分,範圍從小函數到整個算術,並具有標準化介面
通過獨立的註釋層增強數據,例如測量單位或來源
使用統一或傳播結合獨立的部分信息
通過領域模型、規則系統和模式匹配、傳播及依賴導向回溯將控制結構與問題領域分離
擴展程式語言,使用動態可擴展的評估器
作者簡介
Chris Hanson is on the technical staff at Datera.
Gerald Jay Sussman is Panasonic Professor of Electrical Engineering at MIT. He is the coauthor of Structure and Interpretation of Computer Programs, Structure and Interpretation of Classical Mechanics, and Functional Differential Equations (all published by the MIT Press).
作者簡介(中文翻譯)
Chris Hanson 是 Datera 的技術團隊成員。
Gerald Jay Sussman 是麻省理工學院的松下電氣工程教授。他是《計算機程式的結構與解釋》、《古典力學的結構與解釋》和《函數微分方程》(均由麻省理工學院出版社出版)的共同作者。