1. 伯乐范文网 > 知识库 >

ioc是什么意思,ioc是什么意思的缩写

本文目录索引

1,ioc是什么意思的缩写

IOC是多种义项的缩写,包括:控制反转、国际奥林匹克委员会、初始作战能力、政府间海洋学委员会、IBM智慧城市智能运行中心。 1、控制反转(Inversion of Control,缩写为IoC) 是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。 通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。 2、国际奥林匹克委员会 简称为国际奥委会,是一个国际性的、非政府的、非赢利的组织。是奥林匹克运动的领导机构,它于1981年9月17日得到瑞士联邦议会的承认,确认其为无限期存在的具有法人资格的国际机构。总部位于瑞士洛桑。由法国人皮埃尔·德·顾拜旦建立,首任主席是泽麦特里乌斯·维凯拉斯。 3、初始作战能力 一般指武器装备服役并初步具备作战能力。例如,一般认为F-22A2002年服役,并于2005年形成初始作战能力。 4、政府间海洋学委员会 是为通过科学调查增加人类关于海洋自然现象及资源的知识而建立的机构。政府间海洋学委员会于1960年成立,是联合国教科文组织的下属的一个促进各国开展海洋科学调查研究和合作活动的国际性政府间组织。 5、IBM智慧城市智能运行中心 IBM Intelligent Operations Center 可监视并管理城市服务。它通过集中化的智能,提供了对日常城市运营的洞察。现在,城市、政府机构和企业可以优化运营效率并改进规划。ioc是指IBM智慧城市智能运行中心(IOC)。

ioc是什么意思的缩写

2,IOC是什么意思?

国际奥林匹克委员会
国际奥林匹克委员会 (International Olympic Committee--IOC)

国际奥林匹克委员会,简称国际奥委会。1894年成立后,总部设在巴黎。1914年第一次世界大战爆发,为了避免战火的洗劫,1915年4月10日总部迁入这个有"国际文化城"之称的洛桑。这里有奥林匹克博物馆,奥林匹克研究中心,还有以顾拜旦名字命名的大街,体育场,等等。数十年来,洛桑为奥林匹克运动的发展,作出了重大贡献,无怪乎有人将洛桑称为"奥林匹克城"。国际奥委会也是在这个美好的城市逐渐发展、壮大而闻名于世的。

国际奥委会,是奥林匹克运动的领导机构,是一个不以营利为目的、具有法律地位和永久继承权的法人团体。根据现代奥林匹克运动创始人顾拜旦的理想,恢复奥林匹克运动的目的,在于增强各国运动员之间的友谊与团结,促进世界和平以及各国人民之间的相互了解,发展世界体育运动。《奥林匹克宪章》明文规定,国际奥委会的宗旨是:鼓励组织和发展体育运动和组织竞赛;在奥林匹克理想指导下,鼓舞和领导体育运动,从而促进和加强各国运动员之间的友谊;迄今已有近百年历史的国际奥委会,为之作出了积极努力和重大贡献。

3,IOC是什么意思

ioc是一个多义词,请在下列义项中选择浏览(共4个义项)
添加义项
▪IOC
▪国际奥林匹克委员会简称
▪政府间海洋学委员会简称
▪IBM智慧城市智能运行中心(IOC)

国际奥林匹克委员会,简称国际奥委会,是奥林匹克运动的领导机构,是一个不以营利为目的、具有法律地位和永久继承权的法人团体。
国际奥委会根据现代奥林匹克运动创始人顾拜旦的理想,恢复奥林匹克运动的目的,在于增强各国运动员之间的友谊与团结,促进世界和平以及各国人民之间的相互了解,发展世界体育运动。《奥林匹克宪章》明文规定,国际奥委会的宗旨是:鼓励组织和发展体育运动和组织竞赛;在奥林匹克理想指导下,鼓舞和领导体育运动,从而促进和加强各国运动员之间的友谊。
1894年6月23日在巴黎召开的国际体育代表大会上成立。发起人是法国的教育家皮埃尔·德·顾拜旦男爵。1894年成立后,总部设在巴黎。1914年第一次世界大战爆发,为了避免战火的洗劫,1915年4月10日总部迁入有“国际文化城”之称的瑞士洛桑。这里有奥林匹克博物馆,奥林匹克研究中心,还有以顾拜旦名字命名的大街,体育场等等。数十年来,洛桑为奥林匹克运动的发展,作出了重大贡献,称为"奥林匹克之都"。国际奥委会也是在这个美好的城市逐渐发展、壮大而闻名于世的。
迄今已有近百年历史的国际奥委会,为之作出了积极努力和重大贡献。
中文名
国际奥林匹克委员会
外文名
International Olympic Committee
简 称
国际奥委会
总 部
瑞士洛桑
成立时间
1894年6月23日
发起人
法国教育家皮埃尔·德·顾拜旦男爵
现任主席
托马斯·巴赫

4,ioc和aop的区别?

1 IoC,(Inverse of Control)控制反转,其包含两个内容:其一是控制,其二是反转。在程序中,被调用类的选择控制权从调用它的类中移除,转交给第三方裁决。这个第三方指的就是Spring的容器。IoC另解,依赖注入(Dependency Injection),调用类对被调用类的依赖关系由第三方注入,以移除调用类对被调用类的引用。2 aop,面向切面编程(也叫面向方面):Aspect Oriented Programming(AOP),是目前软件开发中的一个热点,也是Spring框架中的一个重要内容。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。   3 AOP是OOP的延续,是(Aspect Oriented Programming)的缩写,意思是面向切面(方面)编程。主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等。    4 主要的意图是:将日志记录,性能统计,安全控制,事务处理,异常处理等代码从业务逻辑代码中划分出来,通过对这些行为的分离,我们希望可以将它们独立到非指导业务逻辑的方法中,进而改 变这些行为的时候不影响业务逻辑的代码。 扩展资料: IoC是一个很大的概念,可以用不同的方式实现。其主要形式有两种: 依赖查找:容器提供回调接口和上下文条件给组件。EJB和Apache Avalon 都使用这种方式。这样一来,组件就必须使用容器提供的API来查找资源和协作对象,仅有的控制反转只体现在那些回调方法上(也就是上面所说的 类型1):容器将调用这些回调方法,从而让应用代码获得相关资源。 依赖注入:组件不做定位查询,只提供普通的Java方法让容器去决定依赖关系。容器全权负责的组件的装配,它会把符合依赖关系的对象通过JavaBean属性或者构造函数传递给需要的对象。通过JavaBean属性注射依赖关系的做法称为设值方法注入(Setter Injection);将依赖关系作为构造函数参数传入的做法称为构造器注入(Constructor Injection) 实现数据访问层 数据访问层有两个目标。第一是将数据库引擎从应用中抽象出来,这样就可以随时改变数据库—比方说,从微软SQL变成Oracle。不过在实践上很少会这么做,也没有足够的理由未来使用实现数据访问层而进行重构现有应用的努力。 第二个目标是将数据模型从数据库实现中抽象出来。这使得数据库或代码开源根据需要改变,同时只会影响主应用的一小部分——数据访问层。这一目标是值得的,为了在现有系统中实现它进行必要的重构。 模块与接口重构 依赖注入背后的一个核心思想是单一功能原则(single responsibility principle)。该原则指出,每一个对象应该有一个特定的目的,而应用需要利用这一目的的不同部分应当使用合适的对象。这意味着这些对象在系统的任何地方都可以重用。但在现有系统里面很多时候都不是这样的。 随时增加单元测试 把功能封装到整个对象里面会导致自动测试困难或者不可能。将模块和接口与特定对象隔离,以这种方式重构可以执行更先进的单元测试。按照后面再增加测试的想法继续重构模块是诱惑力的,但这是错误的。 使用服务定位器而不是构造注入 实现控制反转不止一种方法。最常见的办法是使用构造注入,这需要在对象首次被创建是提供所有的软件依赖。然而,构造注入要假设整个系统都使用这一模式,这意味着整个系统必须同时进行重构。这很困难、有风险,且耗时。 AOP、OOP在字面上虽然非常类似,但却是面向不同领域的两种设计思想。OOP(面向对象编程)针对业务处理过程的实体及其属性和行为进行抽象封装,以获得更加清晰高效的逻辑单元划分。 而AOP则是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。这两种设计思想在目标上有着本质的差异。 上面的陈述可能过于理论化,举个简单的例子,对于“雇员”这样一个业务实体进行封装,自然是OOP/OOD的任务,我们可以为其建立一个“Employee”类,并将“雇员”相关的属性和行为封装其中。而用AOP设计思想对“雇员”进行封装将无从谈起。 同样,对于“权限检查”这一动作片断进行划分,则是AOP的目标领域。而通过OOD/OOP对一个动作进行封装,则有点不伦不类。 换而言之,OOD/OOP面向名词领域,AOP面向动词领域。 面向过程编程离我们已经有些遥远,面向对象编程正主宰着软件世界。当每个新的软件设计师都被要求掌握如何将需求功能转化成一个个类,并且定义它们的数据成员、行为,以及它们之间复杂的关系的时候,面向切面编程(Aspect-Oriented Programming,AOP)为我们带来了新的想法、新的思想、新的模式。 如果说面向对象编程是关注将需求功能划分为不同的并且相对独立,封装良好的类,并让它们有着属于自己的行为,依靠继承和多态等来定义彼此的关系的话;那么面向切面编程则是希望能够将通用需求功能从不相关的类当中分离出来,能够使得很多类共享一个行为,一旦发生变化,不必修改很多类,而只需要修改这个行为即可。 面向切面编程是一个令人兴奋不已的新模式。就开发软件系统而言,它的影响力必将会和有着数十年应用历史的面向对象编程一样巨大。面向切面编程和面向对象编程不但不是互相竞争的技术而且彼此还是很好的互补。 面向对象编程主要用于为同一对象层次的公用行为建模。它的弱点是将公共行为应用于多个无关对象模型之间。而这恰恰是面向切面编程适合的地方。有了 AOP,我们可以定义交叉的关系,并将这些关系应用于跨模块的、彼此不同的对象模型。AOP 同时还可以让我们层次化功能性而不是嵌入功能性,从而使得代码有更好的可读性和易于维护。它会和面向对象编程合作得很好。 参考资料:百度百科-aop 百度百科-ioc

5,IOC的意思

IOC
1.Input /Output Channel [Control] 输入/输出通道[控制];
2.Input/Output Controller [Converter] 输入/输出控制器[转换器];
3.Intergovernmental Oceanographic Commission 政府间海洋学委员会(联合国UNESCO);
4.International Olympic Committee 国际奥林匹克委员会;
5.International Oceanographic Commission 国际海洋学委员会
一般指第4个

6,什么是IOC,什么时候用IOC ?

控制反转(Inversion of Control,英文缩写为IoC)是框架的重要特征,并非面向对象编程的专用术语
IoC可以认为是一种全新的设计模式,但是理论和时间成熟相对较晚,并没有包含在GoF中。
Interface Driven Design接口驱动,接口驱动有很多好处,可以提供不同灵活的子类实现,增加代码稳定和健壮性等等,但是接口一定是需要实现的,也就是如下语句迟早要执行:AInterface a = new AInterfaceImp(); 这样一来,耦合关系就产生了,如:

1234567891011

classA{ AInterface a; A(){} AMethod()//一个方法 { a = new AInterfaceImp(); }}


Class A与AInterfaceImp就是依赖关系,如果想使用AInterface的另外一个实现就需要更改代码了。当然我们可以建立一个Factory来根据条件生成想要的AInterface的具体实现,即:

123456789101112131415161718

InterfaceImplFactory{ AInterface create(Object condition) { if(condition == condA) { return new AInterfaceImpA(); } else if(condition == condB) { return new AInterfaceImpB(); } else { return new AInterfaceImp(); } }}


表面上是在一定程度上缓解了以上问题,但实质上这种代码耦合并没有改变。通过IoC模式可以彻底解决这种耦合,它把耦合从代码中移出去,放到统一的XML 文件中,通过一个容器在需要的时候把这个依赖关系形成,即把需要的接口实现注入到需要它的类中,这可能就是“依赖注入”说法的来源了。
IoC模式,系统中通过引入实现了IoC模式的IoC容器,即可由IoC容器来管理对象的生命周期、依赖关系等,从而使得应用程序的配置和依赖性规范与实际的应用程序代码分开。其中一个特点就是通过文本的配置文件进行应用程序组件间相互关系的配置,而不用重新修改并编译具体的代码。
当前比较知名的IoC容器有:Pico Container、Avalon 、Spring、JBoss、HiveMind、EJB等。
在上面的几个IoC容器中,轻量级的有Pico Container、Avalon、Spring、HiveMind等,超重量级的有EJB,而半轻半重的有容器有JBoss,Jdon等。
可以把IoC模式看做是工厂模式的升华,可以把IoC看作是一个大工厂,只不过这个大工厂里要生成的对象都是在XML文件中给出定义的,然后利用Java 的“反射”编程,根据XML中给出的类名生成相应的对象。从实现来看,IoC是把以前在工厂方法里写死的对象生成代码,改变为由XML文件来定义,也就是把工厂和对象生成这两者独立分隔开来,目的就是提高灵活性和可维护性。
IoC中最基本的Java技术就是“反射”编程。反射又是一个生涩的名词,通俗的说反射就是根据给出的类名(字符串)来生成对象。这种编程方式可以让对象在生成时才决定要生成哪一种对象。反射的应用是很广泛的,像Hibernate、Spring中都是用“反射”做为最基本的技术手段。
在过去,反射编程方式相对于正常的对象生成方式要慢10几倍,这也许也是当时为什么反射技术没有普遍应用开来的原因。但经SUN改良优化后,反射方式生成对象和通常对象生成方式,速度已经相差不大了(但依然有一倍以上的差距)。

7,IOC究竟有什么存在意义

IOC控制反转/DI依赖注入 控制反转就是应用本身(Action)不负责依赖对象(Dao)的创建及维护,依赖对象的创建及维护是由外部容器(BeanFactory)负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。依赖注入就是指:在运行期,由外部容器(BeanFactory)动态地将依赖对象(Dao)注入到组件(Action)中。 1)依赖注入的方式 DI(Dependency injection 依赖注入)是IoC实现的重要技术,有如下2种方式: a,setter方式注入 b,构造方式注入 2)IoC和DI的关系 IoC全称Inverse of Control(反向控制或控制反转) Spring是具有IoC特性的框架。实现IoC是由Spring容器来完成的,Spring容器通过DI建立起对象(组件、Bean)之间的关系。可以这样理解:DI是IoC实现的一种手段,IoC的理论通过DI来实现。 DI用来管理对象(组件、Bean),不用你自己一个个new AOP中的一些概念 a,切面(aspect):跟类很相似,切面就是通知(Advice)的集合 b,目标对象:要使用Advice操作的方法(异常)的对象 c,连接点(Joinpoint):被拦截到的点,点指的是调用某方法或处理某异常 d,切入点(PointCut):匹配一系列连接点的集合的断言(表达式),是一个表达式,指明处理方法(Advice)将在何时触发。 e,通知(Advice):拦截到JoinPoint之后要做的事(比如logger()) f,前置通知(Before Advice):在某连接点之前的通知(连接点方法执行之前,做的事) g,后置通知(After returning Advice):某连接点正常完成以后执行的通知 h,最终通知(after finally Advice):最后执行的操作 AOP用来做日志、声明式事物管理等另外: Aop的实现 1)目标对象如果实现接口: spring会在底层使用jdk动态代理,spring以jdk动态代理为主(jdk实现的) 2)目标对象如果没有实现任何接口 spring需要依赖第3方 cglib-nodep-2.1_3.jar来实现,使用的是cglib动态代理