摘要
您維護的天氣應用程式會使用最近宣佈關閉的氣象服務。 您需要開始調查其他氣象服務。 得知改變服務可能會影響到您的資料,您想從使用程式碼後置切換到使用資料繫結來更新使用者介面。 如此一來,當您決定要使用哪個氣象服務時,就不必擔心 UI 受到影響。
您在練習中執行的資料繫結會減少在資料變更時更新 UI 所需的程式碼。 而不是使用按鈕的事件處理常式來與 UI 上的控制項互動以呈現資料,您改用資料繫結。 天氣服務的資料物件已設定為頁面的繫結內容,而且頁面上的控制項繫結至該資料物件的屬性。 無論天氣服務如何更新,UI 都會自動與資料同步。
假設後端程式碼在沒有資料繫結的情況下受到影響。 如果您重新命名控制項、將一個控制項變更為不同的類型,或甚至刪除控制項,則程式碼後置將不再編譯。 如果天氣服務停止提供特定欄位的資料,例如濕度,則您的程式碼會在嘗試在 UI 中呈現時當機。 使用者會讓應用程式突然停止運作,他們不知道發生了什麼事。
資料繫結會自動與 UI 同步資料。 一旦天氣資料變更,繫結至該資料的任何項目也會變更。 當UI屬性類型和資料物件類型不相符時,轉換器會轉換系結數據,讓UI正確呈現它。 如此可減少維護 UI 所需的後端代碼。 資料來自何處,以及觸發資料的方式,對於大部分的 UI 而言並不相關。 如果資料物件上不再提供濕度,資料繫結 UI 不會顯示濕度標籤,而不是當機。 對於您的使用者來說,這是更好的體驗,而不是當機的應用程式。