函數式設計:原則、模式與實踐 Functional Design: Principles, Patterns, and Practices
Robert C. Martin 譯 吾真本//姚琪琳//覃宇
- 出版商: 機械工業
- 出版日期: 2024-07-09
- 定價: $654
- 售價: 7.9 折 $517
- 語言: 簡體中文
- 頁數: 246
- 裝訂: 平裝
- ISBN: 7111757815
- ISBN-13: 9787111757818
-
相關分類:
Functional-programming
- 此書翻譯自: Functional Design: Principles, Patterns, and Practices (Paperback)
-
相關翻譯:
無瑕的程式碼 函數式設計篇:原則、模式與實踐 (繁中版)
立即出貨
買這商品的人也買了...
-
打造可維護軟體|編寫可維護程式碼的10項法則 (Java版) (Building Maintainable Software, Java Edition: Ten Guidelines for Future-Proof Code)$450$356 -
鳳凰專案|看 IT部門如何讓公司從谷底翻身的傳奇故事$480$379 -
CODE COMPLETE:軟體開發實務指南, 2/e (中文版) (Code Complete: A Practical Handbook of Software Construction, 2/e)$1,280$998 -
領域驅動設計:軟體核心複雜度的解決方法 (Domain-Driven Design: Tackling Complexity in the Heart of Software)$680$530 -
Martin Fowler 的企業級軟體架構模式:軟體重構教父傳授 51個模式,活用設計思考與架構決策 (Patterns of Enterprise Application Architecture)$800$624 -
流程架構|整合串流與事件驅動的未來 (Flow Architectures: The Future of Streaming and Event-Driven Integration)$580$458 -
無瑕的程式碼 敏捷篇:還原敏捷真實的面貌 (Clean Agile : Back to Basics)$560$437 -
建構微服務|設計細微化的系統, 2/e (Building Microservices: Designing Fine-Grained Systems, 2/e)$880$695 -
高並發系統實戰派:集群、Redis 緩存、海量存儲、Elasticsearch、RocketMQ、微服務、持續集成等$654$621 -
Kafka 實戰$539$512 -
重構的時機與實作|五行程式碼規則 (Five Lines of Code: How and When to Refactor)$680$537 -
程式設計守則|如何寫出更好的程式碼 (The Rules of Programming: How to Write Better Code)$620$490 -
建立演進式系統架構|支援常態性的變更, 2/e (Building Evolutionary Architectures: Automated Software Governance, 2/e)$580$458 -
Beyond XSS:探索網頁前端資安宇宙$880$695 -
簡約的軟體開發思維:用 Functional Programming 重構程式 - 以 Javascript 為例 (Grokking Simplicity: Taming Complex Software with Functional Thinking)$1,000$790 -
無瑕的程式碼 軟體工匠篇:程式設計師必須做到的紀律、標準與倫理 (Clean Craftsmanship: Disciplines, Standards, and Ethics)$720$562 -
資料工程基礎|規劃和建構強大、穩健的資料系統 (Fundamentals of Data Engineering)$980$774 -
分佈式系統實戰派 — 從簡單系統到復雜系統$648$616 -
軟體開發者職涯應變手冊|穿越職涯迷霧的絕佳導航 (The Software Developer's Career Handbook: A Guide to Navigating the Unpredictable)$720$569 -
先整理一下?|個人層面的軟體設計考量 (Tidy First?: A Personal Exercise in Empirical Software Design)$480$379 -
$760Java 應用開發關鍵技術與面試技巧 -
x86 匯編與逆向工程 軟件破解與防護的藝術$594$564 -
讓 AI 好好說話!從頭打造 LLM (大型語言模型) 實戰秘笈$680$537 -
生成式 AI 入門 – 揭開 LLM 潘朵拉的秘密 : 語言建模、訓練微調、隱私風險、合成媒體、認知作戰、社交工程、人機關係、AI Agent、OpenAI、DeepSeek (Introduction to Generative AI)$580$458 -
AI 時代 Math 元年 - 用 Python 全精通機器學習 (黑白印刷)$1,080$853
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$576 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
在本書中,著名軟件工程師羅伯特·C. 馬丁(Robert C. Martin,"鮑勃大叔")
解釋瞭如何以及為什麼使用函數式程式設計為真實客戶建立更好的系統。
作者將 Java 中傳統的物件導向編碼結構與函數式語言所支援的編碼結構進行了比較,
確定了每種結構的最佳作用,並展示瞭如何在特定環境中明智地使用這些結構來建立更好的系統。
作者簡介
羅伯特·C.馬丁(Robert C.Martin),世界級軟件開發大師,設計模式和敏捷開發先驅,敏捷聯盟首任主席,C++ Report雜誌前主編。他從20世紀70年代起就是一名程序員,被後輩程序員尊稱為“鮑勃大叔”(Uncle Bob)。 他是Clean Coders網站的創始人,這個網站為軟件開發者提供在線視頻培訓。他也是“鮑勃大叔咨詢公司”(Uncle Bob Consulting LLC)的創始人,這家公司為世界各地的大企業提供軟件咨詢、培訓和技能發展服務。 他的著作有《代碼整潔之道》《代碼整潔之道:程序員的職業素養》《敏捷整潔之道:回歸本源》《架構整潔之道》《敏捷軟件開發:原則、模式與實踐》等。
目錄大綱
目錄
題 獻
推薦序
譯者序
序
前 言
致 謝
作者簡介
第一部分 函數式基礎
第1章 不變性 2
1.1 什麼是函數式程式設計 3
1.2 賦值的問題 5
1.3 為什麼叫它「函數式」 7
1.4 沒有狀態改變嗎 8
1.5 不變性概念 11
第2章 持久性資料 12
2.1 關於瞞天過海 14
2.2 製作副本 14
2.3 結構共享 16
第3章 疊代與遞歸 19
3.1 疊代 20
3.1.1 極簡Clojure教學 20
3.1.2 疊代概述 22
3.1.3 TCO、Clojure和JVM 22
3.2 遞歸 23
第4章 惰性 26
4.1 惰性累積 28
4.2 為何需要惰性 28
4.3 尾聲 29
第5章 狀態性 30
5.1 何時必須「可變」 33
5.2 軟件事務內存 34
5.3 生活不易,軟件更難 36
第二部分 比較性分析
第6章 質因子練習 39
6.1 Java版 40
6.2 Clojure版 43
6.3 總結 45
第7章 保齡球練習 46
7.1 Java版 47
7.2 Clojure版 51
7.3 總結 54
第8章 八卦公共汽車司機練習 56
8.1 Java版 57
8.1.1 公共汽車司機文件 62
8.1.2 行車線路文件 62
8.1.3 公共汽車站文件 63
8.1.4 八卦故事文件 64
8.1.5 模擬過程文件 64
8.2 Clojure版 65
8.3 總結 69
第9章 物件導向程式設計 70
9.1 函數式薪資問題解決方案 72
9.2 命名空間與原始檔 78
9.3 總結 78
第10章 類型 80
第三部分 函數式設計
第11章 資料流 86
第12章 SOLID 92
12.1 單一職責原則 93
12.2 開閉原則 96
12.2.1 函數 97
12.2.2 有虛表的物件 98
12.2.3 多重方法 98
12.2.4 獨立部署 99
12.3 裏氏替換原則 101
12.3.1 ISA原則 103
12.3.2 這不對 105
12.3.3 代表原則 106
12.4 接口隔離原則 106
12.4.1 不需要就別依賴 108
12.4.2 為什麼 108
12.4.3 總結 109
12.5 依賴倒置原則 109
12.5.1 回憶殺 111
12.5.2 違反依賴倒置原則 119
12.5.3 總結 129
第四部分 函數式實用主義
第13章 測試 132
13.1 REPL 133
13.2 Mock 133
13.3 基於性質的測試 134
13.4 診斷技術 137
13.5 函數式 143
第14章 GUI 144
第15章 並發性 155
第五部分 設計模式
第16章 設計模式回顧 165
16.1 函數式程式設計中的模式 167
16.2 抽象服務器模式 168
16.3 適配器模式 170
16.4 命令模式 174
16.5 組合模式 178
16.6 裝飾器模式 186
16.7 訪客模式 189
16.7.1 To Close or to Clojure 191
16.7.2 90°問題 193
16.8 抽象工廠模式 196
16.8.1 90°問題重現 199
16.8.2 型式安全嗎 201
16.9 總結 201
16.10 補充:物件導向是毒藥嗎 201
第六部分 案 例 研 究
第17章 Wa-Tor小遊戲 204
17.1 如鯠在喉 220
17.2 解決問題 222
17.3 讓魚瘋狂繁殖 230
17.4 對於鯊魚 231
17.5 總結 240
後記 242
