设计模式(基于Python3)

主要参考资料:
【设计模式 inPy】一个视频搞懂三种设计模式:工厂、建造者和单例: https://b23.tv/sNAJw17
工厂模式?错!是工厂模式群!: https://b23.tv/nncOf3V

目录

  • 1.创建型设计模式
    • 1.1工厂模式
    • 1.2建造者模式
    • 1.3单例模式
  • 2.行为型设计模式

1.创建型设计模式

1.1工厂模式

工厂模式的核心是将对象的创建过程和使用过程分开。解耦对象的创建与使用。

class DatabaseConnection:
	def __init__(self, host):
		self.host = host
	
	def connect(self):
		return f"Connecting to database at {self.host}"

def connection_factory(type):
	from config import configs
	return DataBaseConnection(**configs[type])

main_db = connection_factory('main')
analytics_db = connection_factory('analytics')
cache_db = connection_factory('cache')	

1.2建造者模式

基本思想为,分步骤创建复杂对象
构造逻辑需要清晰,切勿违背责任单一原则。

1.3单例模式

基本思想为在类里面使用类变量存放一个实例。每次想要获取这个实例时就返回类变量中的实例。

class A
	_instance = None
	
	#重写new,有对象时返回原来对象,没有对象时新建一个对象
	def __new__(cls, *args, **kwargs):
		if cls._instance is None:
			cls._instance =super().__new__(cls)
		return cls._instance

2.行为型设计模式

核心目标:优化对象间的交互与责任分配

你可能感兴趣的:(Pyhton,设计模式)