2012-04-15 39 views
2

我正在研究一個涉及網站的項目,在此之後,移動應用程序(很可能將使用跨平臺工具(如Phonegap或Sencha)構建)。網站後臺和移動服務層應該使用相同的API嗎?

整體應用程序大量數據驅動,所有這些應用程序都將存儲在我們的Web服務器上的MySQL數據庫中。我知道我將爲移動應用程序設置一個REST API作爲服務層,但我不確定它 - 我是否也應該將此API用於主網站?

在開始項目之前,我需要知道這一點,因爲如果我打算吃我自己的dogfood,那麼API將是第一要務。

萬一它很重要 - API將永遠不會暴露給第三方開發人員。

+0

@PST:改爲更具描述性的手頭問題 – xbonez 2012-04-15 00:43:22

回答

4

是的,你應該使用API​​的網站。它簡化了您的代碼庫並鼓勵代碼重用,因爲您只處理一個API而不是兩個(REST + MySQL)。此外,它使開發人員(包括您!)的生活更輕鬆,因爲只有一組API調用需要一次記住。另外,將來您可以使用HTML(也許使用PhoneGap,最近開源並更名爲Cordova)構建您的移動應用程序。如果您的網站使用REST API,則可以更輕鬆地將網頁代碼移植到HTML5移動版。 Nitpick:這不是真正的吃自己的狗食的問題。 Dogfooding typically refers從用戶的角度而不是開發人員的角度使用預發佈代碼,以便更輕鬆地查找錯誤。

+0

謝謝。對於處理和開發只有一個API來說,這聽起來「更清潔」。 – xbonez 2012-04-15 01:27:00

6

當然,爲什麼不呢?這意味着你只有一個入口點來測試和監控,它跟在DRY principle之後,如果你也使用它,它會鼓勵更好的API設計。

相關問題