zoukankan      html  css  js  c++  java
  • 【Java高级工程师蜕变之路】008 Spring核心思想

    IOC

    ioc不是spring提出的,spring只是ioc的一个实现

    什么ioc

    ioc(inversion of control)控制反转,他是一个技术思想,不是技术实现

    ioc是做什么的

    java领域对象的创建、管理问题

    传统开发方式:类A依赖类B,在类中创建一个类B的对象

    IOC开发方式:不需要创建对象,由容器帮忙创建对象并返回,需要哪个对象告诉IOC容器,由容器返回即可

    利弊:失去了创建对象的权利,但是同时也得到了不需要管理对象创建、依赖等一系列好处

    为什么叫控制反转

    控制:对象的创建管理和实例化的权利

    反转:控制权交给IOC容器了

    IOC解决了什么问题

    ioc解决了对象之间的耦合问题

    IOC和DI的区别

    DI:Dependency Injection 依赖注入

    IOC和DI描述的是同一件事情(对象实例化以及依赖关系管理),角度不同

    IOC站在对象角度,对象实例化和管理法人权利交给了容器

    DI是站在容器的角度,容器会把对象依赖的其他对象注入

    AOP

    什么是AOP

    Aspect oriented programming 面向切面编程

    AOP是OOP的眼神

    OOP三大特征:封装、继承、多态

    OOP是垂直纵向继承体系

    OOP可以解决大部分情况下的代码重复问题,但是有些问题解决不了

    横切逻辑代码的问题

    • 代码重复

    • 横切代码和逻辑代码混合在一起,不利于维护

      AOP可以解决

    AOP解决了什么问题

    在不改变原有代码逻辑的情况下,增强横切逻辑代码,根本上解耦合,解决代码重复问题

    为什么叫面向切面编程

    切:横切逻辑,原有逻辑代码不能动,只能操作横切逻辑

    面:横切逻影响很多方法,每个方法是一个点,多个点构成面

  • 相关阅读:
    iphone精简教程
    自己搭建云盘 – 简单的PHP网盘程序
    内存泄漏(I)
    App 基本图片配置(I)
    Git 工作环境配置
    MVC(I)
    ReactNative APP基本框架搭建 基于 React Navigation
    UI绘制原理及卡顿 掉帧原因
    ES6中Json、String、Map、Object之间的转换
    Invariant Violation: requireNativeComponent: "RNCWKWebView" was not found in the UIManager.
  • 原文地址:https://www.cnblogs.com/tangyouwei/p/15659480.html
Copyright © 2011-2022 走看看