作品简介

本书讲解软件架构系统各方面的内容,从顶层设计到用于支持高层功能的低层细节。本书首先介绍软件架构的含义并给出简单的设计示例,之后分为四个部分涵盖软件开发生命周期中的各个阶段:讨论构成系统的每个组成单元的一般性原则及其核心内容;重点介绍一些成功的架构模式,包括它们的优势和局限性;阐述如何进行软件测试以及如何构建和共享代码;讲解持续运维,涵盖日志、系统度量、性能分析、代码调试和架构调整等内容。本书将帮你形成架构思维,了解软件开发的思路和项目中要考虑的重点问题。

詹姆·布尔塔(Jaime Buelta)是拥有20多年经验的杰出程序员,其中10余年全职从事Python开发。在此期间,他接触了很多不同的技术,帮助航空航天、工业系统、在线视频游戏服务、金融服务和教育工具等多个行业领域的客户达成目标。自2018年以来,Jaime一直在撰写技术书籍,总结职业生涯中的经验教训,除本书外,他还著有Python Automation Cookbook和Hands On Docker for Microservices in Python。Jaime目前居住在爱尔兰都柏林。

一本书的出版非一人之功。这离不开直接参与完善、改进文稿的人员的辛苦付出,还有与Python基金会及其技术社区那些出色的技术人员进行的大量沟通和交流,这些沟通和交流形成了书中的观点。当然,如果没有我了不起的妻子Dana付出的爱和支持,本书也不可能完成。

作品目录

  • The Translator's Words 译者序
  • Preface 前言
  • About the Author 关于作者
  • About the Reviewer 关于审校者
  • Chapter 1 第1章 软件架构简介
  • 1.1 设计软件系统的架构
  • 1.2 划分为较小的单元
  • 1.3 康威定律:对软件架构的影响
  • 1.4 应用示例:概述
  • 1.5 软件架构安全
  • 1.6 小结
  • Part 1 第一部分 设计
  • Chapter 2 第2章 API设计
  • Chapter 3 第3章 数据建模
  • Chapter 4 第4章 数据层
  • Part 2 第二部分 架构模式
  • Chapter 5 第5章 十二要素App方法论
  • Chapter 6 第6章 Web服务器架构
  • Chapter 7 第7章 事件驱动架构
  • Chapter 8 第8章 高级事件驱动架构
  • Chapter 9 第9章 微服务与单体
  • Part 3 第三部分 实现
  • Chapter 10 第10章 测试与TDD
  • Chapter 11 第11章 包管理
  • Part 4 第四部分 持续运维
  • Chapter 12 第12章 日志
  • Chapter 13 第13章 度量
  • Chapter 14 第14章 性能分析
  • Chapter 15 第15章 调试
  • Chapter 16 第16章 持续架构
  • 推荐阅读
展开全部