创建型设计模式学习笔记

在软件工程中,设计模式是解决特定问题的成熟方法。今天我想和大家分享一些关于创建型设计模式的知识。创建型设计模式主要关注对象的创建过程,旨在创建对象时使这个创建过程与使用对象的过程分离,提高程序的灵活性和可复用性。

创建型设计模式包括单例模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式。这里,我将简要介绍单例模式和工厂方法模式。

单例模式(Singleton Pattern)确保一个类只有一个实例,并提供一个全局访问点。在Python中,可以通过装饰器实现单例模式:

class Singleton:
    _instance = None

    def __new__(cls):
        if cls._instance is None:
            cls._instance = super(Singleton, cls).__new__(cls)
        return cls._instance

# 使用
singleton1 = Singleton()
singleton2 = Singleton()
print(singleton1 is singleton2)  # 输出: True

工厂方法模式(Factory Method Pattern)定义了一个创建对象的接口,但让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。以下是一个简单的工厂方法模式示例:

class ProductA:
    def operation(self):
        return "Product A"

class ProductB:
    def operation(self):
        return "Product B"

class Creator:
    def factory_method(self, choice):
        if choice == "A":
            return ProductA()
        elif choice == "B":
            return ProductB()
        else:
            return None

# 使用
creator = Creator()
product = creator.factory_method("A")
print(product.operation())  # 输出: Product A

作为学生,学习这些设计模式有助于我们更好地理解面向对象设计的原则,并在实际项目中应用这些原则来解决复杂问题。希望这些笔记对你的学习有所帮助!

posted @ 2025-12-21 19:44  曹明阳  阅读(0)  评论(0)    收藏  举报