国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

免費(fèi)數(shù)據(jù)接口api 后端開(kāi)發(fā)完接口才給出接口文檔,合理嗎?你怎么看?

后端開(kāi)發(fā)完接口才給出接口文檔,合理嗎?你怎么看?一個(gè)非常好的問(wèn)題,我是工作多年的Web應(yīng)用架構(gòu)師,來(lái)回答一下這個(gè)問(wèn)題。歡迎關(guān)注我,了解更多IT專(zhuān)業(yè)知識(shí)。后端給出接口文檔太晚,也合理也不合理,要看具體情

后端開(kāi)發(fā)完接口才給出接口文檔,合理嗎?你怎么看?

一個(gè)非常好的問(wèn)題,我是工作多年的Web應(yīng)用架構(gòu)師,來(lái)回答一下這個(gè)問(wèn)題。歡迎關(guān)注我,了解更多IT專(zhuān)業(yè)知識(shí)。


后端給出接口文檔太晚,也合理也不合理,要看具體情況,總有解決方法,我來(lái)說(shuō)一下我的觀(guān)點(diǎn)。


不合理:成熟的技術(shù)團(tuán)隊(duì),重視功能設(shè)計(jì),在動(dòng)手寫(xiě)代碼之前已經(jīng)有了完整的技術(shù)文檔和功能定義,甚至在TDD測(cè)試驅(qū)動(dòng)開(kāi)發(fā)模式中,測(cè)試數(shù)據(jù)已經(jīng)準(zhǔn)備就緒,那么這時(shí)接口文檔不管寫(xiě)沒(méi)寫(xiě),接口邏輯都是已經(jīng)確定的,整理出來(lái)是水到渠成。


合理:多存在于早期小型創(chuàng)業(yè)公司,主觀(guān)客觀(guān)原因都有。


- 先說(shuō)主觀(guān)原因。趕進(jìn)度、沒(méi)時(shí)間、懶得寫(xiě),甚至開(kāi)發(fā)前都沒(méi)做仔細(xì)的設(shè)計(jì),邊做邊改,這些原因普遍存在,也實(shí)在沒(méi)啥好辦法。


- 客觀(guān)原因,需求在變,功能跟著變,接口也要變,那么如果寫(xiě)了文檔,理所當(dāng)然也要更新維護(hù)???我的天哪。


有解決方法嗎?建議試試:

1,Swagger接口文檔,將文檔融合到代碼中,讓維護(hù)文檔和修改代碼整合為一體,使得修改代碼邏輯的同時(shí)方便的修改文檔說(shuō)明。


2,Postman接口測(cè)試工具,導(dǎo)入導(dǎo)出JSON文件,高效團(tuán)隊(duì)協(xié)作。Postman支持各種請(qǐng)求方式和配置環(huán)境變量,并對(duì)返回結(jié)果進(jìn)行測(cè)試校驗(yàn),支持批量自動(dòng)化運(yùn)行,可以和自動(dòng)構(gòu)建系統(tǒng)集成。

api文檔是什么?

API:Application ProgrammingInterface(應(yīng)用編程適配器), 語(yǔ)言、框架以及類(lèi)庫(kù)對(duì)外提供的編碼的適配器

當(dāng)您安裝 Visual C 6.0時(shí),您將得到一個(gè)包括API文件的線(xiàn)上求助系統(tǒng)。您可通過(guò)訂閱MSDN或使用Microsoft網(wǎng)站上的線(xiàn)上求助系統(tǒng)更新該文件。

如何使WebAPI自動(dòng)生成漂亮又實(shí)用在線(xiàn)API文檔?

1、如何引入組件

首先,我們需要定義一個(gè)api項(xiàng)目

然后通過(guò)nuget引入組件。記住選下圖中的第三個(gè)。

引入成功后,將向項(xiàng)目里面添加一些主要文件:

?scriptswebapitestclient.js

?areashelppagetestclient.css

?areashelppageviewshelpdisplaytemplatestestclientdialogs.cshtml

?areashelppageviewshelpdisplaytemplatestestclientreferences.cshtml

2、如何使用組件

1、修改api.cshtml文件

通過(guò)上述步驟,就能將組件webapitestclient引入進(jìn)來(lái)。下面我們只需要做一件事:打開(kāi)文件(根據(jù)areashelppageviewshelp)api.cshtml并添加以下內(nèi)容:

?@html.displayformodel("testclientdialogs")

?@html.displayformodel("testclientreferences")