本文主要是介绍PO OOP AOP IoC SOA全解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
名词解释
- PO(Procedure Oriented,面向过程编程):以过程为中心,分析出解决问题所需要的步骤,然后把这些步骤一步一步实现。
- OOP(Object Oriented Programming,面向对象编程):程序由单个能够起到子程序作用的单元或对象组合而成。OOP达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。
- AOP(Aspect Oriented Programming,面向切面编程):通过预编译方式和运行期动态代理实现程序功能的统一维护。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,提高开发效率。
- SOA(Service-Oriented Architecture,面向服务的体系结构):通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义的接口进行通讯,不涉及底层编程接口和通讯模型。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
面向对象编程(AOP)将程序分解成各个层次的对象,面向切面编程(OOP)将程序运行过程分解成各个切面
Spring中IoC和AOP的理解
Spring的优点:
- 降低了组件之间的耦合性 ,实现了软件各层之间的解耦
- 可以使用便捷的众多服务,如事务管理,消息服务等
- 容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能
- Spring对于主流的应用框架提供了集成支持,如
Hibernate
,JPA
等 - Spring属于低侵入式设计,代码的污染极低
- Spring的高度开放性,开发者可以自由选择Spring的部分或全部
IoC
控制反转(Inversion of Control)和依赖注入(Dependecy Injection)广义上讲是同一个概念,具体的讲:在Spring中创建被调用者的工作不再由调用者来完成,因此称为控制反转。创建被调用者的工作由Spring来完成,然后注入调用者,因此也称为依赖注入。
注入方式有设值注入和构造注入:设值注入直观,自然 。构造注入可以在构造器中决定依赖关系的顺序。
AOP
面向切面编程(AOP)在Spring中主要表现为两个方面
1. 面向切面编程提供声明式事务管理
2. Spring支持用户自定义的切面
IoC(工厂模式)容器是Spring的核心,AOP(代理模式)是Spring框架的重要组成部分
这篇关于PO OOP AOP IoC SOA全解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!