2012-12-20 33 views
5

在python中创建API时,我不确定用init创建基本对象的实例需要采取什么方法。在API中用于对象初始化的OO设计模式

在创建API中的对象的情况下,用户最有可能希望对象是两件事情之一:

  1. 已经存在的API是被什么样的对象实例所谓对
  2. 创建一个新的对象的API被称为对

有什么这个公认的设计模式? init是否应该创建一个空对象,然后消费者必须调用get或set方法?或者,也许初始化应该采取一个论据,如果这是一个get或set?或者最后,应该从参数中推断出init还是set?

回答

2

我想不出一个设计模式的精确匹配你所描述的,因为:

如何将API重载到以下内容?

当不带参数调用:

custom_API() 

然后就创建了一些合理的默认值的新的基本对象,并让消费者使用的get/set来配置它。

当与某种类型的查找关键字调用:

custom_API("abc") 

然后返回相应的对象,或查找关键字的对象的列表是模糊的,或None如果没有匹配的对象可以找到。