DataBindingとは
目次
DataBindingとは<読み方 :データバインディング>
アプリやフロントでUIを実装する際に、アプリ内で保持しているデータと画面に表示されている内容を自動で同期してくれる便利な機能です。
同期は保持しているデータからの1方向だけではなく、ユーザーの入力を起点とした双方向での同期に対応しています。
歴史
元々はwindowsのデスクトップアプリの開発を楽にするために提供された機能。
AndroidではGoogle I/O 2015で発表されました。
iOSではRxSwift(2015年から提供されたライブラリ)やCombine(2019年に提供されたフレームワーク)などで実現できます。
現場の声
iOSではDataBindingを使っていない頃は、delegateパターンやNotificationCenterを使ってデータの更新通知を実装していましたが、それぞれ、値のバケツリレーになったり、どこから呼ばれているか分かりづらくなるなどの課題がありました。DataBindingを実現することで見通しの良い実装が出来るようになり、現在では必須のスキルだと考えています。
Androidでは保持しているデータとレイアウトXML上で表示する部分を紐づけるだけで、Null対策・オブザーバーパターンの実装・リスナーの紐付けなどをマクロが自動生成してくれるため、ボイラープレートコード実装の省略と修正漏れの防止により生産性を向上できます。
豆知識
- iOSではAppleがCombineフレームワークを導入したり主流のアーキテクチャがMVVMになりつつあるため、DataBindingの知識、実装が必須になります。
- AndroidでもJetpackで推奨されており、モダンな開発で必須な概念です。
- ユーザーの処理などに対して同期できることでUX改善にもつながります。
<関連用語>
MVVM
オブザーバーパターン
RxSwift
Combine
◆執筆・監修:
アルサーガパートナーズ株式会社 DX技術用語集制作チーム App Div.