Programming Beyond Practices
作者: Gregory T. Brown
语言: 英文
出版年份: 2016
下载链接:
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。

书籍摘要

《Programming Beyond Practices》是由 Gregory T. Brown 撰写的软件开发书籍,于 2016 年 10 月由 O’Reilly Media 出版。本书并非传统意义上的编程教材,而是一本通过一系列短篇故事来引导读者深入思考软件开发实践的书籍。作者通过这些故事,鼓励读者在软件开发过程中超越传统的编程实践,培养更全面的思维方式和解决问题的能力。

作者简介

Gregory T. Brown 是 Practicing Ruby 期刊的创始人,也是 Prawn PDF 生成库的原作者。他专注于通过最少的代码解决核心业务问题,并通过本书分享了他在软件开发实践中超越传统编程实践的经验和见解。

内容概览

全书共分为 8 章,每章围绕一个特定的软件开发主题展开,通过虚构的故事场景,让读者在解决问题的过程中学习到关键的开发理念和技巧。

第 1 章:探索项目想法的原型开发

本章通过开发一个音乐视频推荐系统的故事,介绍了如何通过快速原型开发来探索项目想法。强调了理解客户需求、使用线框图设定功能预期、快速搭建可运行的测试系统以及如何通过限制工作范围来降低复杂性。

第 2 章:增量变更中的隐藏依赖

通过在现有知识库中集成公共维基功能的故事,探讨了在对生产代码库进行增量扩展时可能出现的问题,如基础设施级别的依赖关系、数据层的隐藏依赖以及如何避免非必要的实时数据同步。

第 3 章:服务集成的痛点

本章以维护一个教育期刊的软件为例,讨论了第三方服务集成可能带来的问题,包括服务变更或停用、测试中的过时模拟对象以及如何应对外部服务的不可靠性。

第 4 章:解决问题的严谨方法

通过指导新手开发者 Emma 解决编程难题的故事,介绍了如何通过收集事实、手动处理问题、验证输入数据以及利用演绎推理来检查工作,从而系统地解决复杂问题。

第 5 章:自底向上的软件设计

本章通过构建一个模拟即时生产工作流的软件的故事,展示了自底向上设计软件的方法,包括识别问题空间中的名词和动词、逐步实现最小功能切片、避免对象之间的不必要时间耦合以及逐步提取可重用部分和协议。

第 6 章:不完美的世界中的数据建模

以替换一个过时的时间跟踪应用为例,讨论了如何通过解耦概念模型和物理模型、设计显式的数据变更跟踪模型以及理解 Conway’s Law 对数据管理实践的影响,来改进数据模型和工作流程。

第 7 章:渐进式流程改进作为过度承诺的解药

通过帮助一家初创公司 TagSail 解决成长中的技术问题,介绍了如何通过快速响应意外故障、分析运营瓶颈、关注工作经济权衡以及限制在制品来减少浪费。

第 8 章:软件开发的未来

作者展望了软件开发的未来,想象了一个机器完成大部分编码工作的世界,程序员更多地专注于解决问题和沟通,而非编写代码。

书籍特色

  • 故事驱动:通过虚构的故事场景,让读者在具体情境中学习软件开发理念。
  • 实践导向:强调在实际开发中遇到的问题和解决方案,而非抽象的理论。
  • 全面思考:鼓励读者从项目需求、技术实现到团队协作等多个角度思考问题。

《Programming Beyond Practices》适合所有希望提升软件开发能力、培养系统思维和解决问题能力的开发者阅读。

期待您的支持
捐助本站