Fluent Databinding v MVVMCross zlepšuje výkon aplikací především prostřednictvím jeho typu bezpečné a kompilované časem kontrolované povahy, i když výhody výkonu souvisejí více s účinností rozvoje a méně o zlepšení výkonu runtime. Zde je návod, jak to přispívá k lepší celkové výkonnosti aplikací a udržovatelnosti:
1. Zadejte kontroly bezpečnosti a kompilace: Fluent Databinding umožňuje vývojářům vytvářet vazby pomocí kódu C#, což znamená, že vazby jsou kontrolovány spíše v době kompilace než za běhu. To snižuje pravděpodobnost chyb za běhu v důsledku nesprávných vazebných cest nebo překlepů, což může jinak vést k problémům s výkonem nebo havárie. Tím, že tyto chyby zachytí brzy, mohou vývojáři zajistit, aby jejich aplikace byly od začátku stabilnější a výkonnější [2] [4].
2. Zlepšená účinnost vývoje: Syntaxe plynulé je často snadnější číst a udržovat než jiné vazebné formáty, jako jsou vazby založené na JSON nebo XML. Tato snadnost použití může vést k rychlejším vývojovým cyklům a méně chyb, což nepřímo zlepšilo celkový výkon aplikace snížením času stráveného ladění a optimalizací [1] [4].
3. Flexibilita platformy: Fluent Bindings jsou zvláště užitečné na platformách, jako jsou iOS a Android, kde soubory rozvržení XML nejsou tak snadno upravitelné jako soubory XAML používané v aplikacích Windows nebo .NET MAUI. Tato flexibilita umožňuje vývojářům udržovat konzistentní postupy kódování na různých platformách, které mohou zjednodušit proces ladění a optimalizace [1] [4].
4. Snížená režie runtime: Zatímco samotné vazby plynulé nesnížení ve srovnání s jinými vazebnými metodami nesnižují režii běhu, zajišťují, aby byly vazby správně nastaveny a udržovány. Nesprávné nakonfigurované vazby mohou vést k zbytečným aktualizacím nebo oznámení, což by mohlo ovlivnit výkon. Zajištění správného stanovení vazeb se mohou vývojáři vyhnout těmto potenciálním výkonu [2].
5. Integrace s prvky MVVMCross: MVVMCross poskytuje řadu funkcí, včetně navigace a injekce závislosti, které lze použít ve spojení s plynulými vazbami k vytváření účinných a škálovatelných aplikací. Efektivní využití těchto funkcí mohou vývojáři vytvářet aplikace, které dobře fungují na různých platformách [5] [7].
Stručně řečeno, zatímco plynulé datafinding v MVVMCrossu přímo nezlepšuje výkon běhu stejným způsobem, jakým se sestavilo vazby v .NET Maui, zvyšuje účinnost vývoje, snižuje chyby a zajišťuje, že aplikace jsou udržovatelné a méně náchylné k problémům s výkonem v důsledku nesprávných vazeb [3].
Citace:[1] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[2] https://blog.ostebaronen.dk/2018/01/mvvmcross-binding-target.html
[3] https://learn.microsoft.com/en-us/dotnet/maui/fundamentals/data-binding/compilel-bindings?view=net-maui-9.0
[4] https://crosscuttingconcerns.com/mvvmcross-fluent-tababinding
[5] http://wojosoftware.com/software/mvvmcross/
[6] https://diglib.tugraz.at/download.php?id=576A78335451d&location=browse
[7] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvvm-apps-with-xamarin-and-mvvmcross
[8] https://www.mvvmcross.com/documentation/getting-started/gettingstarted
[9] https://www.reddit.com/r/dotnet/comments/68ste4/wpf_databinding_performance_issue/