Optimistic UI

樂觀 UI (Optimistic User Interface) 是什麼?有哪些實踐細節是你應該注意的?

前言

不要讓使用者等待!越多的等待時間,就越容易讓使用者流失,因此讓應用程式的回饋即時,是很基礎重要的原則。

人們通常會認為這是一個技術上的難題,畢竟打造更有效率更快速的程式能夠解決一切問題不是嗎?並不全然如此,除了伴隨著更高的成本代價之外,效能的強化也有上限,舉例來說:

  1. 當使用者的裝置或網路環境不佳時,即便是最有效率的程式也無法解決這個問題。
  2. 不可避免的現有的技術架構,也有效能瓶頸,例如:服務之間溝通仍有最低的時間成本。

這時候便可以透過改善使用者體驗來達成及時反饋的目的,畢竟「等待」是一種可以被操縱的體驗,透過精巧的設計可以緩和等待造成的不適,而樂觀 UI 就是其中一種方式。

傳統 UI 加載流程

在用戶觸發操作後通常會有一段不可避免的等待時間,受限於例如:網路請求、資料庫查詢……等背後操作,等待操作核實或新資料的回傳成功,使用者介面才能展現出行動後的結果。

一般 UI 加載流程

樂觀 UI 加載流程

為了減少等待時間,樂觀 UI 在觸發的當下就假定操作成功,並且立即更新介面讓使用者能夠立即得到操作的反饋,這種模式能夠有效縮短用戶等待時間,創造更流暢、令人滿意的互動體驗。

樂觀 UI 加載流程

樂觀 UI 的優點

很明顯的,樂觀 UI 由於預先假定操作成功,因此用戶操作並「近乎沒有等待時間」是最大的優點。

  • 縮短等待時間: 由於樂觀 UI 在假定操作成功的同時即時更新介面,用戶在觸發操作後幾乎感受不到等待時間,提升整體使用者體驗,特別是在網路環境或系統效能不佳的情況下更為顯著。
  • 流暢互動體驗: 用戶在操作時能夠立即看到結果,使互動更加流暢,有助於提升使用者滿意度和對系統的信心。

樂觀 UI 的缺點

樂觀 UI 的缺點在於,當操作失敗時,使用者介面會與實際狀態不符,這時候就需要透過完善的回饋機制(彈跳警告、動畫)來讓使用者知道操作失敗的原因,並且讓使用者可以重新嘗試。

  • 可能引起混淆: 因為介面瞬間呈現的是預期的結果而非實際完成的結果,可能會讓用戶產生混淆或誤解。
  • 需建立完善的回饋機制: 為了避免混淆,需要建立有效的回饋機制,讓用戶得知操作失敗的原因,提供清晰的信息,並引導用戶進行必要的修正或再次嘗試。

總結

在文章中運用簡單的我的最愛狀態切換來示範樂觀 UI 的應用,不過實際上只要是與創造、更新或刪除這類操作都可以斟酌運用樂觀 UI 來改善使用者體驗。

延伸閱讀