zoukankan      html  css  js  c++  java
  • POP-OOP-AOP-DDD

    目录

    1. pOP
    2. OOP
    3. AOP
    4. DDD
    5. unity的AOP实现

    1:POP:面向过程编码,一路执行下去,不好扩展。

    2;OOP:面向对象  封装 继承 多态

      1.编码前,把需求以对象维度去拆分

      2.功能怎么产生的?对象与对象之间的交互,就是类与类之间的依赖

      3.所以只要交互的接口不变,这样对象内部的变化不影响其他对象

    封装:1. 就是确定好这个对象的行为(业务逻辑)=对象的确定,隔离好内部的业务逻辑之后 就不用去操心外部的实现

      2.数据安全,可以通过不同级别的访问修饰符如public private等 限定外部是否调用

      3:降低耦合,以前是面向过程 现在是对象与对象之间

      4.提高重用,对象重用

    继承:子类继承父类,子类拥有父类的一切,任何父类出现的地方都可以被子类替代 

      1.代码重用

      2.单基类继承:只能有一个父类

      3.继承之后会有重写 覆写() 重载(方法签名一样,方法参数列表不一样)

      4.子类继承父类之后,为什么父类实例化的时候,可以使用子类实例化,?是因为子类继承父类后,默认有一个无参构造函数继承:base(指向父类),这样构造子类之前先去执行构造父类

    多态:

      1.继承后多态:一个父类,可以被多个子类继承,每个子类拥有自己不同的方法

      2.运行时多态:虚方法:父类必须包含实现,但可以被重载,覆写(子类继承父类的虚方法之后加了new,隐藏子类方法,在运行时任然会执行父类方法)

      3.抽象方法,子类继承后必须重写

     3.AOP:面向切面编程,在执行一个oop方法之前或之后,动态的新增功能,不影响oop原先的方法

    #OOP造房子: 类>类库>架构>系统   房子》一层楼》梁柱》大厦   大厦的稳定需要房子不能随便去拆,但是现实中的需求是不断变更的,这就矛盾了

    #AOP就是来解决上面不稳定的问题,AOP可以动态的改变OO的模型,相当于你要在装修房子的时候,动态的提前给你装修前做好工作,让你不再装修房子,保持稳定

    5.Unity使用AOP简单3步

    #第一:先增加3个引用

    1. Unity 2.Unity.Interception 3.Unity.Interception.configuration(用来读取配置文件的)

     
    #2.增加配置文件---配置文件配置的是相关类的实现,相关类的实现必须要实现这个IInterceptionBehavior接口,实现方法
    #3.执行---按照配置文件配置的顺序执行;

    #MVC中的AOP实现是通过特性标识来支持AOP,五大过滤器,Authiretion...

  • 相关阅读:
    cocos2d 接 android sdk 的一个小坑 关于armbeabi 和 armbeabiv7a
    关于ant引用android第三方工程打包的问题, invalid resource directory name: F:\workspace\Zlib\bin\res/crunch
    C语言I博客作业04
    C语言I博客作业07
    第一周作业
    C语言I博客作业05
    C语言I博客作业03
    C语言I博客作业02
    C语言I博客作业06
    调研《构建之法》指导下的优秀实践作品三篇
  • 原文地址:https://www.cnblogs.com/LZXX/p/13564292.html
Copyright © 2011-2022 走看看