首页 » 软件开发 » PO到OOP到AOP到SOA软件开发思想演化和融合(编程思想开发架构演化)

PO到OOP到AOP到SOA软件开发思想演化和融合(编程思想开发架构演化)

神尊大人 2024-07-23 23:22:04 0

扫一扫用手机浏览

文章目录 [+]

PO(Procedure Oriented,面向过程编程):是一种以过程为中心的编程思想。
就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

OOP(Object Oriented Programming,面向对象编程):是一种计算机编程架构。
OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。
OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。
为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。

AOP(Aspect Oriented Programming,面向切面编程):面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。
AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。
利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。

PO到OOP到AOP到SOA软件开发思想演化和融合(编程思想开发架构演化) 软件开发
(图片来自网络侵删)

SOA(Service-Oriented Architecture,面向服务的体系结构):面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。
服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。
SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸。
SOA将能够帮助软件工程师们站在一个新的高度理解企业级架构中的各种组件的开发、部署形式,它将帮助企业系统架构者以更迅速、更可靠、更具重用性架构整个业务系统。
较之以往,以SOA架构的系统能够更加从容地面对业务的急剧变化。

上面是对这几个英文简写的概念描述下面就根据图问的形式来和大家来说明这几个实现图形。

二、图文展示

2.1 PO

在面向过程的编程的指导下我们知道,我们完成一个功能都要写重头到尾写一遍一个一个的来执行每个方法与方法直接都是独立的就算是相同的功能的方法我们用了几次就得在不同的功能下写几次。
这样的编程方式不易维护,扩展性不高。

2.2 OOP

面向对象的编程的出现让我们的方法有了更好的复用性,在对象与对象的这个层面我们利用OOP思想实现了方法的复用性,但是在越来越多的对象构成一个公共的服务颗粒时我们再用淡出的OOP来编程显得有点力不从心。

2.3 OOP+AOP

AOP的出现补充了OOP中因为大颗粒对象直接的解耦问题。
随着我们科技的进步企业中信息化程度越来越高,新系统和旧系统直接,不同语言的系统之间的替换、交互需求日益增多,有了新的系统又不想抛弃旧的系统OOP+AOP来解决这些问题不那么适合了。

2.4 SOA

SOA面向服务的编程思想由于企业内部的需要日益得到推出,SOA让软件更加的灵活,更加的适应了现在的需求。
还有即插即用的软件开发部署方式日益需要OSGI的技术将会在未来大放异彩。

三、总结。

从OP-->OOP+AOP-->SOA这三个阶段一步步的都彰显着人类科技进步,思想进步。

参考原文

作者:gwblue

来源:CSDN

原文:https://blog.csdn.net/gwblue/article/details/46287283

版权声明:本文为博主原创文章,转载请附上博文链接!

标签:

相关文章

C语言表白代码,编程之美,爱意绵绵

在这个科技飞速发展的时代,编程已经成为了我们生活中不可或缺的一部分。而C语言作为一门经典的编程语言,更是备受青睐。今天,就让我们用...

软件开发 2024-12-04 阅读9 评论0

16倍速生活方式,高效工作与生活的完美融合

随着科技的飞速发展,我们的生活节奏也在不断加快。在这个快节奏的时代,如何高效地平衡工作与生活,成为了许多人关注的焦点。本文将探讨1...

软件开发 2024-12-04 阅读8 评论0

C语言编程猜数游戏,编程与娱乐的完美融合

在科技日新月异的今天,编程已经成为一项重要的技能。作为计算机科学的基础,编程不仅可以锻炼我们的逻辑思维,还能提高我们的动手能力。而...

软件开发 2024-12-04 阅读8 评论0

C语言病毒代码介绍,技术与道德的双重挑战

随着信息技术的飞速发展,网络安全问题日益凸显。病毒作为一种恶意软件,严重威胁着计算机系统的稳定运行。C语言作为一种功能强大的编程语...

软件开发 2024-12-04 阅读6 评论0