官术网_书友最值得收藏!

  • SOA實踐
  • 余浩等編著
  • 976字
  • 2018-12-26 17:00:20

1.1.1 服務是可重用的

可重用性指的是,為某一目的而實現的模塊也能被用于其他的目的。具體到服務這個層面,就是服務所包含的邏輯不僅可以被用于最初設計時的目的,也可以被用于其他的目的,即服務可以出現在不同的應用中,它是上下文無關的。

可重用性也是軟件業一直追求的目標。回顧軟件發展的歷程,在面向過程的開發方法中,重用是通過函數來實現的,這些函數實現了一些通用的功能。函數一般被組合為函數庫,這些函數庫可以被用在不同的系統中,從而實現重用。在面向對象的開發方法中,重用的基本單位為對象。對象封裝了數據和對這些數據操作的方法,因此實現了一個更高層次的抽象。特別是對象之間組合形成的框架,不僅實現了功能上的重用,還實現了對象之間的關系的重用。但是,面向過程和面向對象的重用都局限于具體的實現語言,因此它們都不能實現跨語言的重用。隨著組件的概念及基于組件的開發模式的提出,在跨語言重用方面得到突破。組件可以跨越具體的編程語言和編程平臺實現一定程度上的重用。但是組件的概念更偏向于技術,一般粒度都很小,不能直接滿足企業業務的需求,隨后便出現了服務的概念,它可以和企業業務直接對齊,提供粗粒度的功能,其底層實現可以通過組件來完成。從軟件的發展歷程可以看出,抽象的程度一直在提高,直至和企業業務對齊。顯然,服務提供了一個更高層次的重用。

服務的可重用性是服務的很重要的一個特點,它能帶來很多好處。首先,最直接的好處就是降低了開發成本,提高了投資回報率。企業在開發新的應用時,可以先檢查是否現有的服務部分或全部滿足新的應用需求,如果存在這樣的服務,則不需要進行該部分的開發,從而節省了成本。其次,由于利用了現有的服務,開發時間也相應縮短。此外,服務的重用也提高了系統的質量,因為之前開發過的服務已經經過多次的測試和實踐的檢驗,確認是可靠的服務。如果新的應用都是通過現有的服務組合而成的,顯然,其質量能夠得到保證。

服務的可重用性在服務設計階段要重點加以注意,它給設計帶來了新的挑戰。在設計服務時,不僅要考慮到現有的應用,還要把眼光放長遠,考慮到將來可能出現的新應用,使得設計出的服務具有一般通用性。

服務的可重用性也使得創建一個中心服務庫成為必要,在中心服務庫中可以儲存企業現有的所有服務。在企業需要新的應用時,可以先檢查該中心服務庫,看是否存在現有的服務部分或全部滿足企業新的應用需求。

主站蜘蛛池模板: 句容市| 耒阳市| 城口县| 贞丰县| 西乌珠穆沁旗| 丹凤县| 馆陶县| 鹿泉市| 曲阳县| 邢台县| 日土县| 若羌县| 太保市| 廉江市| 全州县| 沾益县| 永嘉县| 富裕县| 玛纳斯县| 霍城县| 许昌市| 贵德县| 太康县| 清徐县| 郧西县| 商南县| 五常市| 乌苏市| 瑞安市| 柘城县| 和平县| 弋阳县| 丰顺县| 旺苍县| 九龙城区| 德州市| 双柏县| 应用必备| 建阳市| 佛山市| 禹城市|