我正在圍繞REST web服務編寫一個Perl包裝模塊,我希望對如何最好地構建模塊提供一些建議。API包裝體系結構最佳實踐
我一直在尋找幾個不同的Perl模塊的靈感。
Flickr::Simple2
基本上是一個包含Flickr API中不同方法的方法的大文件,例如, getPhotos()
等
Flickr::API
是用於進行HTTP請求的另一個模塊(LWP)的子類。所以基本上它只允許你通過使用LWP的模塊進行調用,而不需要定義任何包裝方法本身,這些模塊將轉到正確的API方法/ URL。這個解釋很糟糕 - 但基本上它有一個方法需要一個參數(一個API方法名)並構造正確的API調用,例如, request()
/response()
。
另一種設計就像第一個描述的那樣,但是不那麼單一,對於API的單獨「區域」具有單獨的類。
我想遵循現代/最佳實踐的Perl方法,所以我使用Dist::Zilla
構建模塊和Moose
OO的東西,但我會很感激一些關於如何實際設計/構建我的包裝的輸入。
指南/教程或指向其他精心設計的模塊,將不勝感激。
乾杯
我相信這個問題是關於API包裝,而不是如何編寫API? – itsaboutcode 2011-04-08 15:16:39
@itsaboutcode:問題是關於使用Perl API封裝Web API。這正在寫另一個API,所以Joshua Bloch的建議是相關的。 – dolmen 2011-04-15 20:57:18