POP OOP AOP DDD

POP            Procedure Oriented Programming POP面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步 骤一步一步实现,使用的时候一个一个依次调用就可以了。   逻辑实现的过程

OOP           Object Oriented Programming OOP面向对象编程,是按人们认识客观世界的系统思维方式,采用基于 对象(实体)的概念建立模型,模拟客观世界分析、设计、实现软件的 办法。 考虑问题的方式是从对象出发,分治思想,分而治之。 程序的设计思想

     其实在OOP的内部,依旧是POP的线性思维 OOP是程序设计 ,POP是内部实

AOP           Aspect Oriented Programming AOP面向切面编程:解决面向对象语言的静态问题,能突破类的限制, 去动态扩展类的功能 既不破坏封装,又能额外增加功能(有实例) 对OOP的补充,在OOP中插入一些东西

    AOP多种实现

        1 静态代理,已完成,代理模式-装饰器模式

      2 动态代理,已完成,靠反射代理,以前RealProxy-还有Castle(靠emit)

       3 静态织入,代表PostSharp (收费);Aspect

       4 委托嵌套,ASP.NET Core管道中间件

      5 特性+反射,ASP.NET Core的Filter

      6 IOC容器,autofac-Unity等,其实是基于动态代理或者emit完成

Domain-Driven Design DDD领域驱动设计

   POP-无边界

   OOP-以对象为边界

   DDD-其实就是扩大边界,将对象组装成领域,程序分析设计轻松点

   DDD是一种程序分析设计方法,不关乎具体技术 具体代码实现,依旧是OOP

 

posted @ 2021-12-31 12:03  wolfsocket  阅读(219)  评论(0编辑  收藏  举报