1、概述
PO(Procedure Oriented,面向過程編程):是一種以過程爲中心的編程思想。就是分析出解決問題所須要的步驟,而後用函數把這些步驟一步一步實現,使用的時候一個一個依次調用就能夠了。OOP(Object Oriented Programming,面向對象編程):是一種計算機編程架構。OOP 的一條基本原則是計算機程序是由單個可以起到子程序做用的單元或對象組合而成。OOP 達到了軟件工程的三個主要目標:重用性、靈活性和擴展性。爲了實現總體運算,每一個對象都可以接收信息、處理數據和向其它對象發送信息。AOP(Aspect Oriented Programming,面向切面編程):面向切面編程,經過預編譯方式和運行期動態代理實現程序功能的統一維護的一種技術。AOP是OOP的延續,是軟件開發中的一個熱點,也是Spring框架中的一個重要內容,是函數式編程的一種衍生範型。利用AOP能夠對業務邏輯的各個部分進行隔離,從而使得業務邏輯各部分之間的耦合度下降,提升程序的可重用性,同時提升了開發的效率。SOA(Service-Oriented Architecture,面向服務的體系結構):面向服務架構,它能夠根據需求經過網絡對鬆散耦合的粗粒度應用組件進行分佈式部署、組合和使用。服務層是SOA的基礎,能夠直接被應用調用,從而有效控制系統中與軟件代理交互的人爲依賴性。SOA是一種粗粒度、鬆耦合服務架構,服務之間經過簡單、精肯定義接口進行通信,不涉及底層編程接口和通信模型。SOA能夠看做是B/S模型、XML(標準通用標記語言的子集)/Web Service技術以後的天然延伸。SOA將可以幫助軟件工程師們站在一個新的高度理解企業級架構中的各類組件的開發、部署形式,它將幫助企業系統架構者以更迅速、更可靠、更具重用性架構整個業務系統。較之以往,以SOA架構的系統可以更加從容地面對業務的急劇變化。上面是對這幾個英文簡寫的概念描述下面就根據圖問的形式來和你們來講明這幾個實現圖形。
2、圖文展現。
2.1 PO。編程
在面向過程的編程的指導下咱們知道,咱們完成一個功能都要寫重頭到尾寫一遍一個一個的來執行每一個方法與方法直接都是獨立的就算是相同的功能的方法咱們用了幾回就得在不一樣的功能下寫幾回。這樣的編程方式不易維護,擴展性不高。網絡
2.2 OOP。架構
面向對象的編程的出現讓咱們的方法有了更好的複用性,在對象與對象的這個層面咱們利用OOP思想實現了方法的複用性,可是在愈來愈多的對象構成一個公共的服務顆粒時咱們再用淡出的OOP來編程顯得有點力不從心。框架
2.3 OOP+AOP分佈式
AOP的出現補充了OOP中由於大顆粒對象直接的解耦問題。隨着咱們科技的進步企業中信息化程度愈來愈高,新系統和舊系統直接,不一樣語言的系統之間的替換、交互需求日益增多,有了新的系統又不想拋棄舊的系統OOP+AOP來解決這些問題不那麼適合了。函數式編程
2.4 SOA函數
SOA面向服務的編程思想因爲企業內部的須要日益獲得推出,SOA讓軟件更加的靈活,更加的適應瞭如今的需求。還有即插即用的軟件開發部署方式日益須要OSGI的技術將會在將來大放異彩。spa
3、總結。代理
從OP-->OOP+AOP-->SOA這三個階段一步步的都彰顯着人類科技進步,思想進步。對象