首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

IOC

控制反转(Inversion of Control,缩写IoC),面向对象编程是一种设计原理。它可用于降低计算机代码之间的耦合程度。其中最常见的方法被称为依赖注入(Dependency Injection,缩写DI),一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内全部对象的外界实体,将其所依赖的对象的引用传递给它。也能够说,依赖被注入到对象中。 技术描写叙述 Class A中用到了Class B的对象b。普通情况下。须要在A的代码中显式的new一个B的对象。 採用依赖注入技术之后,A的代码仅仅须要定义一个私有的B对象,不须要直接new来获得这个对象,而是通过相关的容器控制程序来将B对象在外部new出来并注入到A类里的引用中。

01

轻量级Golang IoC容器——iocgo

习惯于Java或者C#开发的人应该对控制反转与依赖注入应该再熟悉不过了。在Java平台有鼎鼎大名的Spring框架,在C#平台有Autofac,Unity,Windsor等,我当年C#开发时用的最多的就是Windsor。使用IoC容器是面向对象开发中非常方便的解耦模块之间的依赖的方法。各个模块之间不依赖于实现,而是依赖于接口,然后在构造函数或者属性或者方法中注入特定的实现,方便了各个模块的拆分以及模块的独立单元测试。 在[长安链]的设计中,各个模块可以灵活组装,模块之间的依赖基于protocol中定义的接口,每个接口有一个或者多个官方实现,当然第三方也可以提供该接口更多的实现。为了实现更灵活的组装各个模块,管理各个模块的依赖关系,于是我写了iocgo这个轻量级的golang版Ioc容器。

02
领券