從IT程式語言的發展曆史看 SOA

來源:互聯網
上載者:User

任何一種新事物的出現都是為了達到一定目的的,提供一定的價值,這也就是其產生和發展的意義所在。弄清楚了這點,也就弄清楚了其本質。
一、IT:英文的全稱為Information Techology,中文翻譯為資訊技術。本質上包括兩種使用方式:
(1)、建立資訊:在企業的各種活動中,如接收訂單、原料採購、等等活動,必然產生大量的資訊,這就需要將各種資訊收集起來,以備以後的進一步調用。
(2)、調用資訊:如接收訂單後,企業開始從事生產,產品生產出來後,需要發貨。就需要找到原來的訂單記錄上面的客戶地址用來發貨,等等操作都是調用資訊的執行個體,也就是IT協助企業建立資訊和調用資訊的執行個體。
(3)、IT的進一步:整合資訊,顯然只有建立資訊和調用資訊是不夠的,隨著IT的進一步發展,資訊整合已經顯得格外重要,因為已經產生的IT格局雖然已經產生很大生產力,但這種生產力反作用IT,必然促進資訊整合。 所以資訊整合不僅僅是企業內部的事情,更關乎企業與企業之間。
二、IT程式語言的發展曆史
觀察過去可以更好的瞭解現在,因為現在是過去的延續。通過觀察現在,可以更好的知道未來,因為未來是現在的延續。
(1) 面向過程的編程:C語言是典型的代表,是一種緊密耦合的軟體語言技術,用C語言的應用程式完成了一大堆函數的編寫,函數的可重用性很差。這種語言的特點必然造成了這種很緊密的耦合性。
(2) 現象對象的編程:以一種更接近人的思維的思想去解決程式設計中的問題,通過封裝、繼承、多態等形式實現鬆散耦合,達到一定程度的複用性。但是這些對象只能本地調用,不能遠程調用。
(3) 面向組件的編程:其最初的動機就是實現遠程分布式調用。它有介面類,另外有專門的實現方法類,用戶端調用的是介面類,介面類和介面類之間實現了一定程度的解耦合,但是這種遠程調用的組件卻依賴於特殊的協議,比如J2EE採用RMI協議。
面向組件編程需要和特定的程式語言綁定,傳輸協議也是非標準化的,傳輸協議的不一致,導致各種組件之間不能互相調用,如J2EE和DCOM無法互相調用。
(4) 標準的Web Service的編程:採用標準的的SOAP傳輸協議,不同廠商實現的Web Servcie之間互相可以調用。
IT程式語言發展的過程實際是一個逐步降低耦合性的過程,也是一個介面和介面實現之間逐漸分離的過程。
    但是Web Service 的SOAP儘管是一種標準的傳輸協議,但是它畢竟是一種特殊的協議,一種特殊的技術,並不支援其它的傳輸協議,如RMI等,所以Web Service 還是和特定的SOAP技術綁定在一起的。
通過瞭解IT和程式語言的發展曆史,可以得到這樣的一個結果,SOA是為了資訊整合,而出現的一種新事物,它顯然是超越的現有的一切技術,但是它又包含了所有的技術。SOA達到的一個目的就是面向服務,而這種面向服務的結果就是忽略任何與技術有關的東西,最終提供的都是服務介面。
其實我們還應該搞清楚物件導向和面向組件之間的區別,面向組件和面向服務的區別,SOA和web service之間的區別。
物件導向和面向組件的區別在於面向組件需要和傳輸協議及應用伺服器的連接埠綁定,面向服務就是要進一步對面向組件解耦,所謂解耦就是將將業務組件和傳輸協議的連接埠解耦,既各種業務組件可以自由的綁定各種傳輸協議。 SOA和web service之間的區別是SOA是在web Service的基礎上發展起來的,web service實現了鬆散耦合的服務和粗粒度的服務,但是web service本質上只是一個服務元件,它雖然採用的標準的協議,但是它是個應用伺服器緊密相關的。
所以可以得出結論:SOA本身並非什麼具體的技術,也不是什麼架構,它是一種思想,它超越了現有的技術和架構,但是它又包含了現有技術和架構。運用這種思想要到達的目的就是做到業務和技術的完全分離,做到敏捷的、不受限制的資訊整合。

摘錄一位網友的話: 有人說英語,有人說漢語,還有人說法語...
Web Service說, 這不利於整合..大家都來說"世界語"--SOAP
SOA說, 世界語還是語言, 和特定表達方式綁定了; 我們最終要做到, 大家都使用腦電波交流, 最終要做到語言和表達完全分離, 做到敏捷的、不受限制的資訊整合.

上面的話可用圖解: SOA的產生

傳統服務元件調用方式

SOA服務元件調用方式

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.