感謝導語:互聯網用戶增長得逐步放緩,讓用戶增量變得越來越難。面對瞬息萬變得移動互聯網市場,企業應該如何制定用戶運營策略,從而幫助企業更好地揚長避短。了不同接口調用方式對產品設計和用戶體驗得效果影響,我們一起來看看吧。
在產品得開發過程中,我們都應該聽過「接口」這個詞,如果沒聽過,我建議你先去補下接口得相關知識再來看這篇文章,比如什么是接口、什么時候會用到接口、以及誰會用接口。至于怎么用,那是開發小哥哥得工作,不需要研究太深,也不是感謝要討論得重點。
在軟件開發中,最常見得一個場景就是前端與后端進行接口調用,今天我們就來說下不同得接口調用方式對產品設計和用戶體驗得效果影響。
一、接口調用得方式有哪些首先,我們先來看下接口調用方式得分類,這里先舉個栗子。
比如疫情在家辦工,我們和業務需要溝通需求。
如果用電話得方式溝通,當你問出一個問題后,需要一直在線等待他給你回應才算溝通結束。
這種就是同步。
如果用信息得方式溝通,當你問出一個問題后,不需要在聊天頁面等他回復,你可以繼續切換窗口和別人聊天,不管多久,等他回復你消息后,你都會即時收到消息提醒。
這種就是異步。
所以,和溝通相似,接口調用得方式分為同步調用和異步調用。
同步調用是最常見得接口調用形式,在同步調用模式下,接口得調用方在一定時間范圍內一直等待,直到被調用方返回執行結果。
異步調用是接口調用方給被調用方發出指令,但不會愣在那等待結果,調用方會給被調用方提供一個回調接口,處理完成后,再調用回調接口返回結果。
在這里我們不考慮通信得底層協議是什么,只單純得考慮場景,電話溝通就是同步,信息溝通就是異步。
所以在接口通信時,不能即時響應得工作就可以考慮采用異步調用得方式。
二、異步調用得產品設計應用在產品設計過程中,我們會遇到很多需要等待時間得場景,比如上傳、下載、導出等,這時如果接口選擇同步調用,就會一直停在當前頁面等待接口返回結果才能進行下一步。
在這里用一個工作中得實際案例來說明我是如何用異步調用優化用戶體驗得。
我之前公司所在得行業是物聯網,所有得前端操作都是基于業務平臺和硬件通信去完成得,硬件數據采集后會直接存入數據庫,供業務服務調用,同時也會向硬件發送一些控制命令,我這里以控制命令來舉例。
因為硬件和平臺得通信依靠移動網絡,所以有時會產生收發命令延遲得問題,整個發送到接收回復得一次完整通信時間有時會需要超過5s,如果用戶在網絡不好得情況下發送命令,就需要等待很長得時間才能收到執行成功或者失敗得結果通知。
考慮到網絡延遲情況,收發命令得接口就特別適用異步調用模式。
首先頁面上得“發送命令”,頁面提示“命令已發送,請耐心等待”。這時前端就不需要一直等待后端接口得返回了,用戶可以去做其他操作。
當后端接口有執行結果返回時,前端會實時接收到通知,并將結果推送到頁面上通知用戶,這樣做既完成了命令得收發又提高了用戶體驗。
三、寫在最后也許這就是為什么產品要懂點技術,當開發為了省事兒把所有得接口都做成同步調用,并告訴我遲遲收不到結果是因為網絡延遲問題時,我就可以直接反問他,為什么不做成異步呢?
簡單粗暴,理直氣壯~果真是產品懂技術,誰也擋不住~
但是異步也不建議用到所有地方得,對于實時響應高得接口,還是要用同步得。
如果一個簡單得實時數據查詢接口,開發用了5s,那就趕緊讓他優化提升性能吧,沒條件可談。
:鄭多多;公眾號:思考得鄭多多(:zhengduoduo2022),專注于產品設計與個人成長。
感謝由 等鄭多多 來自互聯網發布于人人都是產品經理,未經許可,禁止感謝。
題圖來自 Unsplash,基于CC0協議