第10章 整洁的架构

本章重点介绍如何综合利用本书前面探讨的概念来设计完整的系统。本章更侧重于理论,因为考虑到本章主题的性质,如果深挖底层细节,本章的内容将过于复杂。另外,这里假设你已消化了本书前面探讨的所有原则,因此本章将有意避开这些细节,将重点放在大型系统的设计上。

本章的主要学习目标如下。

设计长远看易于维护的软件系统。

通过确保质量卓有成效地开发软件项目。

研究适用于代码的各种概念与系统设计的关系。

本章探讨整洁代码是如何演化为整洁架构的以及为何说整洁代码是优良架构的基石。质量可靠的软件解决方案才是有效的;架构需要通过保证质量(性能、可测试性、可维护性等)来确保软件解决方案有效,而代码需要通过保证质量来确保组件有效。

我们先来探讨代码与架构的关系。

考虑大型系统时,本书前面探讨的概念将以稍微不同的形式重新出现,本节将讨论这一点。适用于详细设计和代码的概念,也适用于大型系统和架构,这很有趣。

本书前面探讨的概念与单独的应用程序相关,这种应用程序通常是一个项目,在源代码版本控制系统(如Git)中,这可能是一个或为数不多的几个仓库。这并不是说这些理念只适用于代码,或者说对思考架构而言毫无用处,其中的原因有两个。首先,代码是架构的基础,如果不细心编写,系统必然失败,而不管架构经过怎样的深思熟虑。

其次,本书前面介绍的有些原则不仅适用于代码,还是设计理念。设计模式就是明显的例子,它们是高级抽象,让你能够快速了解组件在架构中的位置,而无须了解代码的细节。

然而,大型企业系统通常由很多应用程序组成,因此你必须从大型设计(分布式系统)的角度思考。

10.1.1~10.1.3小节将从整个系统的角度出发,对本书前面一直在讨论的主要主题进行探讨。

Get 编写整洁的Python代码(第2版) now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.