用于动态类分配的轻量级、分离的包装器。

borg_pod的Python项目详细描述


#Borg_Pod Python设计模式和模块。

borg-pod模式为创建动态的和分离的类提供了一种简单的方法。而不是强制开发商 链接类实现、设计状态机、引用所有者的正确指针的开销 对每个属性/方法,以及调试系统-您只需在类上方放置一个包装器,然后使用 它。

##获取

克隆此repo,或使用pip3 install borg_pod

##使用

在模块顶部,请确保包括:

来自Borg_u pod import resist,assimilate,Borgpod

或者,如果您遵守谷歌标准:

以BP或BE油的形式进口Borg_pod

你像一个理智的人一样直接导入了博格·波德的相关属性?假设你有一些你想要的课程 要能够在以下两者之间切换实例:

class SomeClassA(object):

def __init__(self):
pass
def my_method(self):
print(“I AM SOME CLASS A”)

类OtherClassB(对象):

def __init__(self):
print(“HOLD ON, I AIN’T SO QUIET.”)
def my_method(self):
print(“…where am I again?”)
def a_unique_method(self, to_print):
print(to_print)

您所要做的就是在这两个选项的上方添加@assimilate decorator:

@my_library.assimilate class SomeClassA …

@my_library.assimilate class OtherClassB

创建和转换一个实例如下所示:

My_First_Unique=SomeClassA()

My_Second_Unique=SomeClassA()

my_third_unique=otherClassB()

断言my_first_unique不是my_second_unique,my_third_unique不是my_first_unique

first_b=someClassb(我的第一个独特)

second_b=someClassb(我的second_唯一)

第三个b=someClassb(我的第三个u是唯一的)

断言(第一个是我的第一个唯一的,第二个是我的第二个唯一的,第三个是我的第三个唯一的
第一个不是第三个,第一个不是第二个

就这样!更高级的用法涉及@resist decorator,以避免自引用注入-但是大多数 开发人员不需要担心这个。您可以在模块内部找到更详细的文档。班级 @assimilate decorator可以是子类,也可以是其他修饰类或非修饰类的子类。

##版权所有

Borg_pod模块,安德鲁M.霍根。(Borg_u Pod©;2018霍根咨询集团)

##许可证

根据apache许可证授权。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
分别使用椭圆曲线密码对文本消息进行java加密和解密   java如何将JTable滚动到特定值?   java JSP登录注销简单web应用程序,使用bean在数据库中存在数据时返回false   java无法编译,未设置类路径,包不存在?   java为什么这一变量会受到影响?   集合为什么Java在Map中没有putIfAbsent(key,supplier)方法?   安卓在Java中计算仿真时间   java初始化方法在主类中的指定方法之前运行   java如何在hadoop的reduce中将genericWritable恢复为用户定义的可写?   如何使用java替换pdf中的文本   参数不适用于ASP服务器的java HttpPost   创建对象时的java NullPointerException   Java JPanel中的swing图形有问题,但它在一个框架中工作   java Android Studio在硬件设备上运行时出错   google api类路径的java空指针异常   java如何将InputStream转换为DataHandler?   java在多个Jetty服务器之间共享连接池