O banco de dados fluente no MVVMCROSS melhora o desempenho das aplicações principalmente por meio de sua natureza verificada por tempo e tempo de compilação, embora os benefícios de desempenho estejam mais relacionados à eficiência do desenvolvimento e menos sobre melhorias no desempenho do tempo de execução. Veja como isso contribui para melhor o desempenho geral do aplicativo e a manutenção:
1. Tipo de segurança e verificações no tempo de compilação: o banco de dados fluente permite que os desenvolvedores criem ligações usando o código C#, o que significa que as ligações são verificadas no tempo de compilação em vez do tempo de execução. Isso reduz a probabilidade de erros de tempo de execução devido a caminhos de ligação incorretos ou erros de digitação, o que pode levar a problemas de desempenho ou travamentos. Ao capturar esses erros mais cedo, os desenvolvedores podem garantir que seus aplicativos sejam mais estáveis e com desempenho desde o início [2] [4].
2. Eficiência de desenvolvimento aprimorada: A sintaxe fluente geralmente é mais fácil de ler e manter do que outros formatos de ligação, como ligações baseadas em JSON ou XML. Essa facilidade de uso pode levar a ciclos de desenvolvimento mais rápidos e a menos bugs, melhorando indiretamente o desempenho geral do aplicativo, reduzindo o tempo gasto em depuração e otimização [1] [4].
3. Flexibilidade da plataforma: As ligações fluentes são particularmente úteis em plataformas como iOS e Android, onde os arquivos de layout XML não são tão facilmente editáveis quanto os arquivos XAML usados nos aplicativos Windows ou .Net Maui. Essa flexibilidade permite que os desenvolvedores mantenham práticas de codificação consistentes em diferentes plataformas, o que pode simplificar o processo de depuração e otimização [1] [4].
4. Despesas gerais reduzidas de tempo de execução: Enquanto as próprias ligações fluentes não reduzem inerentemente a sobrecarga do tempo de execução em comparação com outros métodos de ligação, eles garantem que as ligações sejam configuradas corretamente e mantidas. As ligações configuradas incorretamente podem levar a atualizações ou notificações desnecessárias, o que pode afetar o desempenho. Ao garantir que as ligações sejam estabelecidas corretamente, os desenvolvedores podem evitar essas possíveis armadilhas de desempenho [2].
5. Integração com Recursos MVVMCROSS: O MVVMCROSS fornece uma gama de recursos, incluindo navegação e injeção de dependência, que podem ser usados em conjunto com ligações fluentes para criar aplicações eficientes e escaláveis. Ao alavancar esses recursos de maneira eficaz, os desenvolvedores podem criar aplicativos com bom desempenho em diferentes plataformas [5] [7].
Em resumo, enquanto o banco de dados fluente no MVVMCROSS não melhora diretamente o desempenho do tempo de execução da mesma maneira que compilou as ligações no .NET Maui, aumenta a eficiência do desenvolvimento, reduz erros e garante que os aplicativos sejam mais mantidos e menos propensos a problemas de desempenho devido a ligações incorretas [3].
Citações:[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/compiled-bindings?view=net-mauii -9.0
[4] https://crosscuttingconcern.com/mvvmcross-fluent-databinding
[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-mvmcross
[8] https://www.mvvmcross.com/documentation/getting-started/getting-started
[9] https://www.reddit.com/r/dotnet/comments/68ste4/wpf_databinding_performance_issue/