天天看點

雲計算系統中對開發者的API設計問題

本文講的是<b>雲計算系統中對開發者的API設計問題</b>,【IT168 資訊】近年來,随着網際網路應用的普及與深化,網絡資訊與服務趨于海量,使用者體驗需求不斷增長,資料海量、分布異構、處理複雜、使用繁瑣等問題逐漸突顯,旨在解決這些問題的雲計算(Cloud Computing)相關技術得到了迅猛發展。雲計算概念的提出在成為新的發展機遇的同時也在雲計算技術方面受到挑戰。特别是雲計算系統中的API設計問題受到極大挑戰。

  雲計算是分布式處理(Distributed Computing)、并行處理(Parallel Computing)和網格計算(Grid Computing)的發展,或者說是這些計算機科學概念的商業實作。它的基本原理是,通過使計算分布在大量的分布式計算機上,而非本地計算機或遠端伺服器中,企業資料中心的運作将更與網際網路相似。這使得企業能夠将資源切換到需要的應用上,根據需求通路計算機和存儲系統。

  雲計算注定給資訊時代帶來一場大的技術變革,由他的引導,我們的不用像現在這樣擔心一旦PC壞掉而帶來的資料資訊的丢失,你可以把你的資料存儲在“雲” 端,有專門的小組為你維護資料;你也不必像現在這樣為了使用一款軟體而付費。隻需要一台筆記本或者一個手機,就可以通過網絡服務來實作我們需要的一切,甚 至包括超級計算這樣的任務。這些都是雲計算帶來的好處。

  但現在雲計算系統的開發還隻是處于起步階段,雲計算系統的功能和性能不是很優越。這對于應用程式的開發者來說無疑不是一大困難。而雲計算系統的API(應用程式接口)的設計這直接關系到雲計算系統的性能和易用性。

對于API的設計有以下幾點看法:

  一、API的設計要有嚴格的相容性控制。其目标就是保證版本的更新時,不會導緻低版本的代碼無法運作。當一個版本的API釋出以後,就不能對其進行任何的修改,包括聲明方法的類型、資料類型等。如果出錯将會影響其價值,同時也會降低公司的信譽。

  二、API的設計要合理。各個方法的邊界要區分明确,同時也不能出現資料盲區。不要弄得資料的邊界清楚了,而出現了資料盲區。資料盲區的資料一般都是那些邊界值,是以,我們要對特别考慮邊界值。

  三、API的設計要通常易懂。其系統的方法調用要通常易懂,做到“見名知意”,根據名稱調用的一個方法,該方法所做的事就是開發者所想要的,這對于基于在 該系統上進行應用軟體開發的開發者來說無疑是很愉快的,同時對于API的設計者來說也是很有意義的,這樣不容易混淆各個方法。

  四、API的設計盡量的小。這裡所指的“小”既指源碼編譯後的檔案比較小,同時也指其運作時所占的記憶體較小。這樣運作調用的方法時間會更短一些,也間接得提升了系統和應用程式的運作效率和性能。

  五、在進行API的設計時,沒有确定的内容時不可以加入到API中去的。其原因就是可能因為這樣的不确定因素而導緻資料的運算結果出錯,或者是在應用程式的運作過程中出現異常,這些現象是不可出現的。

  六、設計API的要考慮其功能的全面性。API設計的越全面,那麼應用程式的開發者在允許的範圍内很好的選擇來實作自己的任務。

  七、API的設計還要考慮其高效性。對于資訊時代的産物,俗話說得好“時間就是金錢”,人們對于應用程式的執行效率要求越來越高,提高API的執行效率,也間接得提高了應用程式的執行速度。

  同時,API的設計總是需要演化和更新的,不然API的價值就會降低。我們在設計API的時候,首先要保證API正确的情況下,再來考慮API的高效性和易懂性。

  我們在設計API之後就是實作API,我們在實作API的同時,也要将API文檔化,同時在文檔裡面加上相應的範例。這樣開發人員更容易的了解API中各個方法的通途。這樣也有利于開發者的開發。

原文釋出時間為:2009-07-08

本文作者: IT168.com

本文來自雲栖社群合作夥伴IT168,了解相關資訊可以關注IT168。

原文标題:雲計算系統中對開發者的API設計問題

繼續閱讀