這種簡單的限制從長遠看將增加服務的再利用性。隨著時間的推移,這個服務能夠有效地隨著業務的變化而發展,擴大或者甚至取代其基本的資源,同時最大限度地減少這些改進對外部服務消費者的影響(因為由于合同集中化,他們不能直接連接到這些資源)。這個服務的壽命越長,它的長期再利用的潛力就越大。
因此,雖然邏輯集中化不需要合同集中化,但是,它肯定會從其應用程序中受益。事實上,當這兩個基礎的方式一致地應用到一個服務目錄(服務集)中的時候,他們建立了一個非常能夠推廣業務靈活性的環境。因為這些服務能夠重復地再利用,我們要求對每一個新的解決方案建立較少的冗余的邏輯(減少解決方案交付的時間和成本)。因為這些服務只能通過其合同訪問,我們避開了建立很難改變的整合渠道。因此,我們最終將建立能夠有效地重復利用的服務并且與業務一起發展。
當然,SOA的戰略目標要實現的東西比僅僅使用這兩個模式多得多。然而,這是SOA設計模式建立的基礎,對于取得SOA的成功是至關重要的。甚至最強大的、可升級的和高級的基礎設施也不能幫助你把設計遭到的服務轉變為高價值的IT資產,在不斷變化的商業環境中不斷帶來回報。服務需要從頭開始設計并且預測和適應變化。這就是所謂的面向服務的。
在我們做結論之前,讓我們簡單地介紹一下模式應用順序和模式語言的概念。我們僅解釋了合同集中化如何支持邏輯集中化的。但是,當設計服務時,你首先采用哪一種模式呢?雖然沒有絕對的規則,但是,你可能會有偏愛。例如,當同時建立一個服務集模型的時候,為了恰當地把服務分為獨特的邏輯單元,受使用邏輯集中化是有意義的。然后,你可以使用合同集中化。這樣,這些單元(服務)的每一個部分都將得到一個技術合同,作為正式的進入點。
我們剛才解釋的是模式應用順序在一個具體順序中應用的兩個模式。一個模式目錄是理想地構造的,因此,你能夠根據你們的要求、偏愛和局限性提出許多創造性的應用順序。有些目錄甚至提供了推薦的模式順序,許多單個的模式被認為是經過證明的設計解決方案。這個應用順序本身也被認為是經過證明的。
把許多模式結合到無止境的順序中的自由使一個模式目錄不僅僅是設計模式的記錄文件,而是一個“模式語言”。同任何書面語言一樣,你有能夠組成一個句子的詞匯。這些句子能夠進一步組成一段話、一篇文章等等。人們可以用同樣的方式想象一個模式語言。根據你的技能水平,當你拿筆在一張紙上寫字的時候,你可以寫出一個偉大的文學作品,也可以寫出不偉大的文學作品。同樣,使用模式語言工作的關鍵取決于你的知識和對模式本身的理解。通過理解模式是如何關聯的,可以理解模式內部的主要部分
文章來源于領測軟件測試網 http://www.kjueaiud.com/