unity框架strangeioc研究分享

strangeioc涉及到的设计模式有media中介者模式,binding数据绑定模式

1)基本概念

依赖倒置原则(DIP):一种软件架构设计的原则(抽象概念)。

控制反转(IoC):一种反转流、依赖和接口的方式(DIP的具体实现方式)。

依赖注入(DI):IoC的一种实现方式,用来反转依赖(IoC的具体实现方式)。

IoC容器:依赖注入的框架,用来映射依赖,管理对象创建和生存周期(DI框架)。控制反转ioc是核心

2)绑定--strangeioc框架的核心

  绑定从功能上分为好几种:Tie an interface to a class that implements that interface. Or tie an event to a handler. Or tie two classes such that when one comes into being, the other one is automatically created. (绑定接口到实现类了;绑定事件命令到控制器;绑定2个类,当一个类创建时,另外一个类自动创建。)只是为了更方便的隔离变化,

 

绑定从层次上分为3种: injectionbinding,commandbinding,mediationbing

 

注入绑定injectionbinding主要是用来绑定该类型对象到上下文,这样使得程序中各个地方可以通过contextview访问得到该对象。这种绑定会生成对象。这种绑定是为了生成对象并且注入到指定对象中用的,

 

commandbinding是为了将命令绑定到方法中用的,

 

mediationbing则是为了拦截view消息,而将view注入中介mediator中,然后在viewawake方法里面生成meidtaor对象。 

 

 

3)实际项目中多个场景或者模块

   1)事件消息可以穿透多个模块,crossContextBridge.Bind(MainEvent.GAME_COMPLETE);这样多个contextview里面只要监听到了这个消息就会被触发类似于广播。

 

  2model也可以穿透多个cross来传值,injectionBinder.Bind().To().ToSingleton().CrossContext();

 

  3contextview可以动态卸载,也可以动态加载

你可能感兴趣的:(IT常用)