《TO 導讀》:先前 TechOrange 曾分享從 6 本輕鬆的書籍建立對軟體工程全貌的初步認識,作者 landlord 還分享了更完整的書單,以供有興趣自學軟體工程的工程師們參考,從專業術語到養成工程師價值觀與好習慣一應具全。不管是否要專攻軟體工程,都能就這份書單進一步精進相關知識。
- 單元測試
單元測試的藝術-第二版
英文:The Art of Unit Testing: with examples in C# Second Edition Edition
- 重構
Working Effectively with Legacy Code (重構三部曲-Ⅰ)
英文:Working Effectively with Legacy Code
簡中:修改代碼的藝術 (沒有翻譯的很通順,所以看著彆扭時,可能要中英文搭配著對照)
Refactoring: Improving the Design of Existing Code (重構三部曲-Ⅱ)
英文:Refactoring: Improving the Design of Existing Code
Refactoring to Patterns (重構三部曲-Ⅲ)
簡中:重构与模式 (修订版)
繁中:重構-向範式前進
- TDD & BDD
Test Driven: TDD and Acceptance TDD for Java Developers
英文:Test Driven: TDD and Acceptance TDD for Java Developers
簡中:测试驱动开发的艺术 (應該絕版了)
Growing Object-Oriented Software, Guided by Tests
英文:Growing Object-Oriented Software, Guided by Tests
簡中:測試驅動的面向對象軟體開發 (應該也絕版了)
Specification by Example
英文:Specification by Example: How Successful Teams Deliver the Right Software
簡中:实例化需求: 团队如何交付正确的软件 (翻譯的不怎麼樣)
繁中:Specification by Example 中文版:團隊如何交付正確的軟體 (翻譯的好多了)
- 基礎建設與工法
軟體構築美學
英文:Brownfield Application Development in .NET
繁中:軟體構築美學(絕版)
軟體項目成功之道
英文:Ship it! A Practical Guide to Successful Software Projects
簡中:软件项目成功之道
- 敏捷設計
Agile Principles, Patterns, and Practices in C#
英文:Agile Principles, Patterns, and Practices in C#
Clean Code
英文:Clean Code: A Handbook of Agile Software Craftsmanship
浮現式設計-專業軟件開發演進的本質 (敏捷設計二部曲-Ⅰ)
英文:Emergent Design: The Evolutionary Nature of Professional Software Development
敏捷技能修煉-敏捷軟件開發與設計的最佳實踐(敏捷設計二部曲-Ⅱ)
英文:Essential Skills for the Agile Developer: A Guide to Better Programming and Design
- .NET & C#
你必須知道的 .NET -第二版 (.NET 由淺入深三部曲-Ⅰ)
簡中:你必須知道的 .NET
C# in Depth, 3rd Edition (.NET 由淺入深三部曲-Ⅱ)
繁中 (只有第一版):精通 C# in Depth
CLR via C# (4th Edition) (.NET 由淺入深三部曲-Ⅲ)
Effective C#-50 Effective Ways to Improve Your C#
英文:Effective C# (Covers C# 4.0): 50 Specific Ways to Improve Your C# (2nd Edition)
簡中:C# 高效编程: 改进 C# 代码的 50 个行之有效的办法 (第 2 版)
- Programmer 價值觀與好習慣
The Pragmatic Programmer: From Journeyman to Master
英文:The Pragmatic Programmer: From Journeyman to Master
高效程序員的 45 個習慣-敏捷開發修煉之道
英文:Practices of an Agile Developer: Working in the Real World
Clean Coder
英文:The Clean Coder: A Code of Conduct for Professional Programmers
Effective Programming: More Than Writing Code
英文:Effective Programming: More Than Writing Code
簡中:高效能程序员的修炼
- 專案管理與文化
英文:The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition)
- Agile & Scrum
The Elements of Scrum
簡中:Scrum 要素
Scrum Shortcuts without Cutting Corners: Agile Tactics, Tools, & Tips
英文:Scrum Shortcuts without Cutting Corners: Agile Tactics, Tools, & Tips
敏捷武士
英文:The Agile Samurai: How Agile Masters Deliver Great Software
- 其他
Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise
英文:Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise
簡中:敏捷软件需求 – 团队 – 项目群与企业级的精益需求实践 – 莱芬韦尔
Learning Agile: Understanding Scrum, XP, Lean, and Kanban
英文:Learning Agile: Understanding Scrum, XP, Lean, and Kanban
繁中:Agile 學習手冊:Scrum、XP、精實和看板方法
Scrum 精髓: 敏捷转型指南
英文:Essential Scrum: A Practical Guide to the Most Popular Agile Process
Succeeding with Agile: Software Development Using Scrum
英文:Succeeding with Agile: Software Development Using Scrum
簡中:Scrum 敏捷软件开发
User Stories Applied: For Agile Software Development
英文:User Stories Applied: For Agile Software Development
簡中:用戶故事與敏捷方法
- 網路資源
Mastering Scrum/Agile on trello
Free programming books on github
Data Science on trello
(本文刊登於 PTT Soft_Job 版,並獲作者 landlord 授權刊登轉載,原討論串為〈 [ 請益 ] 學「軟體工程」前需具備什麼能力?〉所附 HackPad 書單完整連結。作者部落格:《In91》,作者粉絲團《91 敏捷開發之路》,圖片來源:schoschie CC Licensed,未經授權請勿轉載。)
延伸閱讀:
想看書自學軟體工程?就從這 6 本輕鬆書打造入門款概念