自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一分鐘了解“好”接口的設(shè)計(jì)與實(shí)現(xiàn)

開(kāi)發(fā) 開(kāi)發(fā)工具
如何設(shè)計(jì)好的接口,下面,我們就簡(jiǎn)單從特性、設(shè)計(jì)和實(shí)現(xiàn)的基本原則來(lái)快速了解一下。

一、好接口的特性

(1) 易讀

(2) 易用,難于誤用

(3) 功能獨(dú)立

(4) 容易擴(kuò)展

[[214745]]

二、好接口設(shè)計(jì)的基本原則

(1) 只做并做好一件事

  • 函數(shù)名自解釋
  • 不恰當(dāng)?shù)暮瘮?shù)名,往往是不恰當(dāng)設(shè)計(jì)的征兆

(2) 如果沒(méi)做到上一點(diǎn),就將函數(shù)分解

  • 只增加,永遠(yuǎn)不要?jiǎng)h除函數(shù)與接口(你永遠(yuǎn)不知道這個(gè)接口被誰(shuí)在使用)

(3) 實(shí)現(xiàn)永遠(yuǎn)不能影響接口

  • 舉例:不能假定函數(shù)調(diào)用者只能使用hash
  • 不能對(duì)外暴露實(shí)現(xiàn)細(xì)節(jié)

(4) 最小化訪問(wèn)

  • 盡量使用私有化成員
  • 注意信息隱藏

(5) 注意文檔與注釋

  • 接口不是只寫(xiě)給自己(即使只給自己,也應(yīng)該有說(shuō)明)

三、好接口實(shí)現(xiàn)的基本原則

(1) 不要到處拷貝代碼

(2) 原子性盡量在一個(gè)接口內(nèi)保證

(3) Fail-Fast原則

  • 出錯(cuò)盡量早點(diǎn)返回,交給上層處理,不要勉強(qiáng)搶救

(4) 避免數(shù)據(jù)直接訪問(wèn),而是提供訪問(wèn)方法

(5) 注意參數(shù)與返回值類(lèi)型

  • 盡量明確類(lèi)型
  • 能不用string盡量不用
  • 使用float的地方盡量用double,64bit

(6) 參數(shù)個(gè)數(shù)不宜太多

  • 如果過(guò)多,就要考慮接口的合理性了

【本文為51CTO專(zhuān)欄作者“58沈劍”原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)聯(lián)系原作者】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來(lái)源: 51CTO專(zhuān)欄
相關(guān)推薦

2022-07-18 06:16:07

單點(diǎn)登錄系統(tǒng)

2017-07-06 08:12:02

索引查詢SQL

2020-07-09 07:37:06

數(shù)據(jù)庫(kù)Redis工具

2020-07-17 07:44:25

云計(jì)算邊緣計(jì)算IT

2016-09-14 15:57:53

架構(gòu)分布式系統(tǒng)負(fù)載均衡

2017-03-30 19:28:26

HBase分布式數(shù)據(jù)

2022-06-02 08:46:04

網(wǎng)卡網(wǎng)絡(luò)服務(wù)器

2016-12-16 11:05:00

分布式互斥線程

2020-05-21 19:46:19

區(qū)塊鏈數(shù)字貨幣比特幣

2018-06-26 05:23:19

線程安全函數(shù)代碼

2018-07-31 16:10:51

Redo Undo數(shù)據(jù)庫(kù)數(shù)據(jù)

2017-02-21 13:00:27

LoadAverage負(fù)載Load

2011-02-21 17:48:35

vsFTPd

2015-10-10 14:11:00

互聯(lián)網(wǎng)數(shù)據(jù)挖掘爬蟲(chóng)

2020-01-30 11:26:17

QinQVLAN協(xié)議

2018-01-14 23:19:25

靜態(tài)動(dòng)態(tài)互聯(lián)網(wǎng)

2016-09-12 17:28:45

云存儲(chǔ)應(yīng)用軟件存儲(chǔ)設(shè)備

2018-12-12 22:51:24

Java包裝語(yǔ)言

2019-12-24 09:10:43

Ipv6IP址協(xié)議

2017-05-23 16:13:45

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)