我哥說(shuō):每次遇到坑,都要在解決坑之后進(jìn)行總結(jié),學(xué)到了什么。
昨天安排前端跟我對(duì)接設(shè)計(jì)頁(yè)面,又出現(xiàn)了很多坑。。。工作沒(méi)辦法進(jìn)行。。
是這樣的:
1.先是說(shuō)要進(jìn)行防偽碼輸入查詢,而我的后臺(tái)只給了二維碼圖標(biāo)預(yù)覽,而沒(méi)有顯示門店的防偽碼。改!
2.前端根據(jù)產(chǎn)品id調(diào)用的接口返回字段不足,需要補(bǔ)充。改!
3.掃碼查詢門店返回字段與掃碼查詢產(chǎn)品字段不符合。改!
說(shuō)一下出現(xiàn)問(wèn)題的原因:項(xiàng)目不是標(biāo)準(zhǔn)的前后端分離,我做的系統(tǒng)和平臺(tái)對(duì)接的時(shí)候,會(huì)經(jīng)過(guò)平臺(tái)的一層包裝,而這個(gè)包裝又或多或少地夾雜了系統(tǒng)的一些邏輯。。。煩。這樣的結(jié)果導(dǎo)致我接手這個(gè)項(xiàng)目的時(shí)候沒(méi)能很好的充分的理解從前端到后端的具體邏輯,于是在開發(fā)的時(shí)候,就只是聽產(chǎn)品經(jīng)理說(shuō)一下要提供什么接口,僅此而已。就先不說(shuō)產(chǎn)品經(jīng)理連整個(gè)邏輯都不清楚這件事了。說(shuō)項(xiàng)目本身的問(wèn)題吧,終究是因?yàn)槲臋n不足夠的原因吧。沒(méi)有API文檔?。](méi)有API文檔??!我都是自己打開源碼,一步步debug下去。但是這個(gè)debug只能跑自己的后臺(tái)系統(tǒng)。前端調(diào)接口就不行了。因?yàn)槠脚_(tái)對(duì)系統(tǒng)的調(diào)用,是放在測(cè)試服務(wù)器上的??赡苣銜?huì)想,直接把平臺(tái)的代碼down下來(lái)一起跑不就好了?但是,這個(gè)調(diào)用鏈不是那么簡(jiǎn)單啊,兄弟。。調(diào)用邏輯是這樣的:前端平臺(tái)-RPC邏輯層-系統(tǒng)。 所以,要調(diào)用本地平臺(tái)那就必須還要把RPC的代碼down下來(lái)。。。想想,就開發(fā)一個(gè)小系統(tǒng),都那么費(fèi)勁。。。
所以,API文檔的對(duì)接,是多么重要!寫好API文檔,給團(tuán)隊(duì)帶來(lái)的收益,是在后期看得到的。
好了,過(guò)渡到API文檔這件事。
昨天晚上,我把需要添加的接口寫上了,要寫API文檔。根據(jù)上文調(diào)用鏈的邏輯,我寫的API文檔,照理來(lái)說(shuō),是提供給RPC邏輯層用的,這是毋庸置疑的吧!
結(jié)果,產(chǎn)品經(jīng)理居然和我說(shuō),這個(gè)接口的入?yún)⒛愀囊幌?,你?yīng)該填上是前端需要填寫的入?yún)ⅰ?/p>
???,我一臉懵逼??!要是寫上之后,后期還不是要改回來(lái)???這么做無(wú)用功,老子不干?。∮谑?,"不行!這么改,不符合接口API的原則,不對(duì)應(yīng)!" 然后他就只能去找對(duì)接的人查明邏輯層的接口是怎么調(diào)用的了。。
嗯,這里沒(méi)總結(jié)。因?yàn)檎恼露际窃谥v一個(gè)道理:寫好API,效率提高的第一步。
今天清明,放假一天,我沒(méi)有時(shí)間回家祭祖,深飄的男青年。
送你一句: 時(shí)間會(huì)證明昨天這么努力的你!加油!