一般api設計使用基本原則

1.在相同的模塊中,嚴禁在回調中使用該模塊除了get語意的接口,尤其是close,stop之類的action接口除非底層做了相應處理。不能使用該屬性通知而又通過get該屬性,原則上面,該接口可能是無效的。

2.要區(qū)分reset,flush和Finish的語意場景,原則上調用了reset之后,所有的接口get類的接口都不可以再調用,直到重新初始化或者set接口之后,往往用于實時環(huán)境,需要快速返回的情況。而flush的接口往往在使用在確保之前的接口都應該將數據或者狀態(tài)傳遞到最后一個知情者。Finish而使用者在確保所有的接口行為都已經執(zhí)行完成。因此熟悉這類的接口將有助于理解以及設計相應的接口。偏于溝通理解,防止誤用。

3.接口應該成雙成對出現,比如open與close,play和stop,一個完備的軟件體系必須從起點出發(fā),也有相應的途徑返回到相應的起點。

4.接口的設計語意功能應該適度,最好可以用一句言簡意賅的陳述該接口的意義,另外需要考慮上層該接口的使用場景。

5.接口設計應該可以多層次化。一個好的接口設計體系即可以非常方便實現通用的功能,也能滿足特定的場合使用。在這個情況下,接口多層次化也可以清晰展現給上層開發(fā)人員。

6.所有的接口都應該有返回值,除了對相應對象最后的銷毀方法可以用void類型,也應該提倡用void類型,另外,上層需要判斷每個接口是否操作正確。

7.所有的接口設計功能要保持單一明確,接口名要規(guī)范,接口直接需要保持適度的冗余與一致。

大概的經驗之談。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,188評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,649評論 19 139
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,741評論 18 399
  • 滾動標題欄經常在各種app中出現,比如網易新聞,新浪新聞這類新聞app,還有斗魚直播app也有出現。這篇文章主要介...
    Atonine閱讀 1,723評論 0 1
  • 標簽:前端開發(fā) 單元測試 jasmine 1. 什么是Jasmine Jasmine is a behavior-...
    philoZhe閱讀 8,214評論 0 5

友情鏈接更多精彩內容