mixin设计模式

mixin设计模式

优点:

1.mixin设计模式可以在不对类的内容修改的前提下,扩展类的功能(添加父类)

2.更加方便的组织和维护不同的组建

3.可以根据开发需要任意调整功能

4.可以避免产生更多的类

缺点:受继承关系限制,推荐只有两层的继承使用

#非mixin模式
#水果类
# class Fruit:
# pass
# #南方水果
# class S_Fruit(Fruit):
# pass
# #北方水果
# class N_Fruit(Fruit):
# pass
# #不可以送礼的南方水果
# class N_gift_S_Ftuit(S_Fruit):
# pass
#
# #可以送礼的南方水果
# class Y_gift_S_Ftuit(S_Fruit):
# pass
# #不可以送礼的北方水果
# class N_gift_N_Ftuit(S_Fruit):
# pass
# #可以送礼的北方水果
# class Y_gift_N_Ftuit(S_Fruit):
# pass
# #不用扒皮,可以送礼,南方水果
# class N_Bapi_Y_gift_S_Fruit(Y_gift_S_Ftuit,S_Fruit):
# pass
# #用扒皮,可以送礼,南方水果
# class Y_Bapi_Y_gift_S_Fruit(Y_gift_S_Ftuit,S_Fruit):
# pass
# #不用扒皮,可以送礼,北方水果
# class N_Bapi_Y_gift_N_Fruit(Y_gift_S_Ftuit,S_Fruit):
# pass
# class Apple(N_Fruit,Y_gift_N_Ftuit,N_Bapi_Y_gift_N_Fruit):
# pass


# minxin设计模式
class N_Fruit():
pass
class S_Fruit():
pass
class Y_gift():
pass
class N_gift():
pass
class Y_Bapi():
pass
class N_Bapi():
pass

class Apple(N_Fruit,Y_gift,N_Bapi):
pass