第1章 设计模式简介

在本章中,我们将详细介绍面向对象编程的基础知识,并深入探讨面向对象的设计原理,以便为本书后面介绍的高级主题打下坚实的基础。此外,本章还将简要介绍设计模式的概念,使你能够了解软件开发中设计模式的背景和应用。在这里,我们也将设计模式分为三大类型:创建型、结构型和行为型模式。因此,本章中主要涵盖以下主题:

  • 理解面向对象编程;
  • 讨论面向对象的设计原则;
  • 理解设计模式的概念及其分类和背景;
  • 讨论动态语言的设计模式;
  • 设计模式的分类——创建型模式、结构型模式和行为型模式。

在开始学习设计模式之前,我们不妨先来了解一下相关的基础知识,并进一步熟悉Python面向对象的范式。面向对象的世界引入了对象的概念,而这些对象又具有属性(数据成员)和过程(成员函数)。这些函数的作用就是处理属性。

这里,我们以对象Car为例进行说明。对象Car不仅拥有多种属性,如fuel level(油位)、isSedan(是否为轿车)speed(速度)、steering wheel(方向盘)和coordinates(坐标),同时还拥有一些方法,例如accelerate()方法用来提供速度,而takeleft()方法则可以让车左转。自Python的第1版发布之后,它也变成了一种面向对象的语言。正如它声明的那样,在Python中,一切皆对象。每个类的实例或变量都有它自己的内存地址或身份。对象就是类的实例,应用开发就是通过让对象交互来实现目的的过程。为了理解面向对象程序设计的核心概念,我们需要深入理解对象、类和方法。

我们可以通过以下几点来描述对象。

  • 它们表示所开发的应用程序内的实体。
  • 实体之间可以通过交互来解决现实世界的问题。
  • 例如,Person是实体,而Car也是实体。Person可以驾驶Car,从一个地方开到另一个地方。 ...

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.