我對(duì)SOA的認(rèn)識(shí)(二)(結(jié)合平時(shí)累積的筆記,不排除有引用)
本系列文章目錄結(jié)構(gòu)
①
??????
我對(duì)
SOA
的認(rèn)識(shí)(一)(結(jié)合平時(shí)累積的筆記,不排除有引用)
(
修改版
)
②
??????
我對(duì)
SOA
的認(rèn)識(shí)(二)(結(jié)合平時(shí)累積的筆記,不排除有引用)
③
??????
我對(duì)
SOA
的認(rèn)識(shí)(三):
SOA
與
WebService
戰(zhàn)略與戰(zhàn)術(shù)
④
??????
對(duì)
SOA
和目前業(yè)成熟應(yīng)用的
JavaEE
應(yīng)用方案的一點(diǎn)看法
⑤
??????
JavaEE
中的三層結(jié)構(gòu)和
MVC
⑥
??????
SOA
服務(wù)模型分析設(shè)計(jì)的一些概念
⑦
??????
對(duì)
SOA
涉及的組件和服務(wù)概念的整理(摘自水木)
?
⑧?
SOA
涉及的
思想 &
產(chǎn)品 &
技術(shù)
????? 前幾天看AOP時(shí),有這樣的描述AOP不是語言而是一種方法論,如同OOP是“面向?qū)ο蟮木幊谭椒ā笔欠椒ㄕ撘粯印?/span>
對(duì)于方法論,查了一下大概闡述如下:方法論是一套完整的實(shí)踐引導(dǎo)體系,是指導(dǎo)實(shí)踐的理論基礎(chǔ),是人們?cè)陂L期社會(huì)實(shí)踐中總結(jié)和摸索出來的,符合客觀發(fā)展規(guī)律的,符合人們對(duì)研究對(duì)象進(jìn)行科學(xué)分析與判斷的社會(huì)實(shí)踐進(jìn)程或步驟。方法是實(shí)踐的成果,如同瓜熟蒂落,實(shí)踐積累達(dá)到一定程度,必然會(huì)提出方法。
閱讀
3.
方法
推動(dòng)這種邏輯向前發(fā)展的,是 “ 方法 ” 和 “ 方法論 ” 的出現(xiàn)。長期的編程實(shí)踐,自然的歸演與總結(jié),必須沉淀為某種 ( 軟件開發(fā) ) 方法,于是 “ 過程 ” 出現(xiàn)了,于是 “ 對(duì)象 ” 出現(xiàn)了,于是相關(guān)的方法論也就出現(xiàn)了。
這是實(shí)踐的成果。方法不是某個(gè)人或者某個(gè)組織創(chuàng)造的。瓜熟而蒂落,實(shí)踐積累達(dá)到一定的程度,微軟不提出某個(gè)方法, IBM 也會(huì)提出這個(gè)方法。即便他們都不提出,可能你自己已經(jīng)在使用這個(gè)方法了。
方法并不神秘,因?yàn)樗褪悄憬裉煺谧龅?、從事的和?shí)現(xiàn)的。正如 “ 模式 ” 是一種方法,而模式就是你昨天書寫代碼的那個(gè)行為。只不過, GoF 歸納、抽取、提升了這些行為的內(nèi)在規(guī)律。
你看不到你做事的行為,也就不能理解 “ 模式 ” 作為一種方法的價(jià)值。所以大師們眾口一詞:模式需要一定的編程經(jīng)驗(yàn)才能理解。
同理,理解過程也需要編程經(jīng)驗(yàn),理解對(duì)象也需要編程經(jīng)驗(yàn),理解 MDA 與 SOA 還是需要編程經(jīng)驗(yàn)。
—— 這可能就發(fā)生在你去回顧你上一行代碼編寫的經(jīng)過,或者上一個(gè)項(xiàng)目失敗的經(jīng)歷的那一瞬息。經(jīng)驗(yàn)來源于回顧、理解與分析,而不是你將要寫的下一行代碼。
有人在寺院掃了一輩子的落葉而得道,也有人因?yàn)橐痪湓挾玫馈?/span>
GoF 因?yàn)闊o數(shù)次的代碼回顧而得道。
同樣在業(yè)界,任何一種技術(shù)或者架構(gòu)的產(chǎn)生,都是歷史潮流的產(chǎn)物,
SOA
概念的提出也是業(yè)界面臨的新問題的解決過程,尤其表現(xiàn)為不同語言開發(fā)的組件的相互調(diào)用,大型系統(tǒng)與大型系統(tǒng)的連接問題。
????? 正是伴隨著軟件系統(tǒng)發(fā)展的需求,催生了SOA的誕生。這也導(dǎo)致SOA的核心就是將多個(gè)系統(tǒng)連接和整合起來,達(dá)到大集成的目的。
????? 這種思想的產(chǎn)業(yè)化,就是業(yè)界大型公司的服務(wù)解決方案,SUN通過收購?fù)瞥鲎约旱?/span>SOA服務(wù)并有開元的打算,IBM利用自己的全套軟件產(chǎn)品全方位的提出了自己的SOA應(yīng)用,類似的Oracle、Redhat等或者通過收購或者利用自己的產(chǎn)品線推出了自己的集成方案。WebService(WSDL、SOAP、UDDI)就是SOA體系的一個(gè)具體技術(shù)解決方案,由于產(chǎn)業(yè)界都有共同支持,也就成了SOA下當(dāng)仁不讓的紅人,外加各種相關(guān)規(guī)范的輔助,偏激一點(diǎn)的說,SOA就是思想體系,WebService就是實(shí)現(xiàn)技術(shù)。
??? 在《我對(duì)SOA的認(rèn)識(shí)(一)》中,我提到過對(duì)于SOA的概念和理解仁者見仁,當(dāng)然不排除受這些思想體系產(chǎn)業(yè)化后的影響。畢竟企業(yè)提供服務(wù)是為了更好的生存,而不是“免費(fèi)的午餐”。
???? 類似OOP、AOP一樣,SOA也不是一種產(chǎn)品或者組件,而是一種理念,一種系統(tǒng)設(shè)計(jì)的理念。SOA體系下提供的是服務(wù),服務(wù)和服務(wù)間通過端口(Port)等連接在一起,從而從一個(gè)全新的角度去觀察、設(shè)計(jì)系統(tǒng)。
???下一篇我對(duì)SOA的認(rèn)識(shí)(三)完成了對(duì)一些觀點(diǎn)的修正 http://www.aygfsteel.com/crazycy/archive/2006/05/26/48244.html
posted on 2006-05-24 13:36 crazycy 閱讀(1599) 評(píng)論(3) 編輯 收藏 所屬分類: SOA、WebService、BPEL