Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Existují konkrétní scénáře, kde je preferováno švýcarské databinding před plynulým databincí


Existují konkrétní scénáře, kde je preferováno švýcarské databinding před plynulým databincí


V MVVMCrossu se pro připojení zobrazení používají jak švýcarské, tak plynulé databinding, ale slouží mírně odlišným účelům a jsou preferovány v různých scénářích.

Swiss Databinding

Švýcarský databinding nabízí čistší a méně podrobující syntaxi ve srovnání s jeho předchůdcem, JSON Databindingem. Je to zvláště užitečné, když potřebujete definovat vazby přímým způsobem, často přímo v souborech rozvržení XML. Švýcarské vazby jsou snadno čitelné a psaní, což je činí vhodné pro jednoduché a přímé vazby, kde musí být syntaxe stručná a pochopitelná.

Jeden konkrétní scénář, ve kterém by bylo možné preferovat švýcarské datafinding, je, když potřebujete rychle nastavit vazby v souborech XML, zejména v platformách, kde se běžně používají a snadno upravitelná rozvržení XML, jako je Android. Swiss Databinding však aktivně nesleduje změny z modelu pohledu, pokud není resetován zdroj vázání, což může být omezením ve scénářích vyžadujících aktualizace v reálném čase.

Fluent Databinding

Fluent Databinding, na druhé straně, poskytuje syntaxi založený na C#pro konstrukci vazby. Tento přístup je obzvláště prospěšný v prostředích, kde rozložení XML není snadno emitovatelné, jako jsou iOS a MacOS. Plynulé vazby umožňují složitější a dynamičtější nastavení vazby, což z nich činí ideální pro scénáře, kde potřebujete programově manipulovat s vazbami nebo zvládnout složitější logiku.

Plynulé datafinding je preferováno, když potřebujete programově vytvářet vazby, které mohou být flexibilnější a výkonnější, zejména ve složitých aplikacích nebo při práci s platformami, které tak efektivně nepodporují rozvržení XML.

Scénáře preferencí

- Švýcarské datafinding je preferováno, když:
-Pro vazby potřebujete jednoduchou, snadno čitelnou syntaxi, zejména v souborech XML.
- Aplikace nevyžaduje nepřetržité sledování změn z modelu pohledu.
- Pracujete v prostředích, kde lze snadno upravovat rozložení XML.

- Plynulé datafinding je preferováno, když:
- Musíte vytvářet vazby programově, což umožňuje dynamičtější a složitější nastavení.
- Pracujete na platformách, kde nejsou rozvržení XML snadno upravena, například iOS.
- Aplikace vyžaduje větší kontrolu nad logikou vazebné nebo musí zvládnout složité scénáře.

Stručně řečeno, zatímco švýcarské i plynulé datafinding mají své silné stránky, výběr mezi nimi závisí na specifických požadavcích vaší aplikace, včetně potřeby jednoduchosti versus složitosti a platformy, pro kterou vyvíjíte.

Citace:
[1] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[2] https://crosscuttingconcerns.com/mvvmcross-fluent-tababinding
[3] https://stackoverflow.com/questions/41462365/what-are-the-pros-and-cons-of-Android-tata-binding
[4] https://stackoverflow.com/questions/60500840/shald-view-binding-replace-data-binding
[5] https://learn.microsoft.com/en-us/dotnet/desktop/wpf/data/?view=netdesktop-9.0
[6] https://www.phunware.com/android-clean-coding-appoach/
[7] https://www.reddit.com/r/androiddev/comments/ux9379/what_are_use_cases_of_data_binding_and_when/
[8] https://jesseliberty.com/2022/02/01/advanced-tatabinding-part-0-basics/