如何設計介面

來源:互聯網
上載者:User

標籤:style   http   io   使用   ar   strong   sp   資料   on   

根據資料和經驗總結。

要求:

  1. 命名:
    1. 命名規則和風格統一、規範;
    2. 命名清晰明確,不冗餘,不模糊;
    3. 有意義:清晰和有意義的命名比簡略而模糊的命名更應受到青睞;
  1. 功能
    1. 職責明確:功能盡量單一;
    2. 充分理由:不要隨便有新功能就增加新介面;無意義的介面只會增加維護的難度;
    3. 將功能層和策略層分開:
      1. 功能是基礎資料,不易變;
      2. 策略是表層資料,易變——策略可以使用參數修改;
    1. 低耦合:減少不同介面間的依賴。
      1. 一個介面不應隨著另一個介面的變化而變化;
      2. 一個介面不應以某幾個介面為前提而存在。
    1. 完備性:
      1. 考慮各種參數變化的情況;
      2. 考慮各種參數為default或為0的情況;
    1. 可擴充性:為以後可能會增加的參數預留餘地,盡量不要寫死;
  1. 參數
    1. 不超過5個;
    1. 從做到右,按照參數容易變化的程度排列;
    2. 盡量提供預設值;
    3. 若超過5個,把相似的資料放入到一個json或list等資料結構中;
    4. 禁止隨意擴充:理由見“功能”部分;
    5. 參數盡量是原生資料結構,少用對平台依賴的資料結構。
  1. 分析角度:明確角度,不要一會以角色設計,一會以功能設計。
  2. 必要資訊:
    1. 初始資訊
      1. 初始化是否完畢
      2. 初始化完畢後的基本資料(如:list或dict的長度——可以看出是否為0)
    1. 中間資訊
      1. 資料來源是否變動
      2. 資料長度是否改變(需要視重要程度決定是否需列印該資訊)
    1. 返回資訊
      1. 是否成功?
      2. 失敗原因?

 

 

 

參考文獻:

  1. http://www.yixieshi.com/zhichang/14567.html

如何設計介面

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.