刚刚看了EuroPython 2017一篇演讲,Why You Don’t Need Design Patterns in Python,为什么python不用设计模式。演讲者是STXNEXT的Sebastian Buczynski。
他对设计模式的定义是:
他说设计模式是一种似曾相识(Anology),是一种大纲(Outline),他认为设计模式并不是拿来就能用的。
第一个是Singleton模式,Singleton的精髓就是任何时候,只有一个类的实例。
《设计模式》里面给出的Singleton代码是
声明:
class Singleton {
public:static Singleton* Instance();
protected:Singleton();
private:static Singleton* _instance;
};
实现:
Singleton* Singleton::_instance = 0;
Sebastian 在 Google 上面找Singleton的Python实现,找到了以下代码:
声明:
class Singleton:_instance = Nonedef __new__(cls, *args, **kwargs):if not cls._instance:cls._instance = super().__new__(cls, *args, **kwargs)return cls._instance
实现:
one_instance = Singleton()
another_instance = Singleton(
本文发布于:2024-01-28 05:50:03,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063922095250.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |