2014-10-11 58 views
1

最近在我們的團隊中,我們討論了是否在API響應中使用顏色。例如移動應用程序的API,它應該有顏色嗎?

{ 
    "message": "Hello", 
    "color": "red" 
} 

{ 
    "message": "Hello", 
    "type": "danger" 
} 

對於第一種選擇是利弊

  1. 如果您需要更改一些元素的顏色,你不必重新編譯並提交再次您的應用程序到AppStore

缺點是

  1. 您無法將所有顏色都推送到API,其中一些顏色仍然會被硬編碼。
  2. 如果你改變了一種顏色,你將不得不改變所有其他類似的顏色,否則你有聖誕樹應用程序的風險,有一堆紅色稍有不同。

對於第二種選擇的優點是

  1. 你完全基於信息的API,你自己決定如何您的用戶界面應該看起來像

缺點是

  1. 如果您需要改變一些顏色,你需要重新編譯你的應用程序,並再次發佈到AppStore,有時可能需要一段時間

親愛的朋友們,您如何看待這兩種不同的方法?請給出一些論據來證明我的看法或閃避它。其他大公司如何設計他們的API?我從來沒有看到API提供顏色,但我沒有看到很多API。

非常感謝您

回答

1

的API旨在提供一種方法來訪問純粹的數據,沒有任何用戶界面的內容,因此,第二個選項是更「正確」,becouse只指定類型,而不是它應該如何看。有了這個選項,任何東西都可能會消耗你的API並決定每種消息類型的外觀。

1

正如米勒解釋說,API應該獨立於UI部分意味着你應該總是從API獲取數據到UI,然後從UI模塊做出決定如何處理。

我認爲你不會改變顏色的任何消息,經常像危險總是紅色,好總是綠色。

所以不要擔心重新編譯其他的東西。大多數情況下,您將添加顏色而不是更改。

如果您還想討論更多,請詳細解釋您的使用案例和應用。

相關問題