Unity-IOC-Event

此类库为IOC库的拓展,旨在实现一个自动注册事件的事件管理器.不再需要像传统项目中自己手动RegisterUnregister事件.

添加引用

通过Package Manager添加如下依赖:

Package Description
https://github.com/kakashiio/Unity-Reflection.git#1.0.0 Reflection
https://github.com/kakashiio/Unity-IOC.git#1.0.0 IOC
https://github.com/kakashiio/Unity-IOC-Event.git#1.0.0 IOC-Event

示例1:全局事件基础

假设我们希望实现如下游戏流程:

  1. IOCContainer初始化完成时,触发EventInit事件
  2. GameFlowController监听所有事件并做出响应
    1. 当收到EventInit事件时
      1. 打印[GameFlow] OnInit
      2. 触发EventFinishInit事件
    2. 当收到EventFinishInit事件时
      1. 打印[GameFlow] OnFinishInit
      2. 触发EventLoadingMain,此时进度为0
      3. 进行场景加载
    3. 当收到EventLoadingMain事件时
      1. 打印[GameFlow] OnLoadingMain 进度值
    4. 当收到EventLoadedScene事件时
      1. 打印[GameFlow] OnEnterScene scene=当前激活的场景
阅读更多

Unity-IOC-Unity

此类库为IOC库的拓展,旨在提升Unity项目开发便捷性甚至性能.以更优雅、便捷和高性能的方式响应Unity提供的各种事件回调.

入门

添加引用

通过Package Manager添加如下依赖:

Package Description
https://github.com/kakashiio/Unity-Reflection.git#1.0.0 Reflection
https://github.com/kakashiio/Unity-IOC.git#1.0.0 IOC
https://github.com/kakashiio/Unity-IOC-Unity.git#1.0.0 IOC-Unity
阅读更多

Unity-IOC

本文目的

向大家介绍:

  1. 在开发中为何要使用IoC
  2. 如何开实现一个精简的IoC
  3. 使用IoC前后代码带来怎样的变化
  4. 我当前在开发的IoC类库

如果你对123都已经很熟了,并且对我的项目感兴趣,可以直接跳我的IoC仓库.完整的工程地址在https://github.com/kakashiio/Unity-IOC,该IoC仓库也是我的Unity游戏框架计划https://github.com/kakashiio/Unity-SourceFramework中的一部分.

阅读更多