C# Xamarin表单与Prism和DryIoc一起注册了大量页面,会降低性能吗?
例如,我们有一个大的Xamarin表单项目,有2000页,Prism MVVM框架,有DryIoc容器,它已经注册了所有2000页 这大量的页面,加上DependencyService,例如navigationservice,dialogservice,会降低导航的速度和/或性能吗? 它会使应用程序运行缓慢,因为依赖性很大C# Xamarin表单与Prism和DryIoc一起注册了大量页面,会降低性能吗?,c#,xamarin,xamarin.forms,prism,C#,Xamarin,Xamarin.forms,Prism,例如,我们有一个大的Xamarin表单项目,有2000页,Prism MVVM框架,有DryIoc容器,它已经注册了所有2000页 这大量的页面,加上DependencyService,例如navigationservice,dialogservice,会降低导航的速度和/或性能吗? 它会使应用程序运行缓慢,因为依赖性很大 谢谢 这个问题没有简单的答案。一般的答案是——是的。与任何包一样,DryIoc也是项目的额外开销。国际奥委会的容器无疑为整体感觉增加了一些时间。请记住,开销是最小的,仅需几毫
谢谢 这个问题没有简单的答案。一般的答案是——是的。与任何包一样,DryIoc也是项目的额外开销。国际奥委会的容器无疑为整体感觉增加了一些时间。请记住,开销是最小的,仅需几毫秒。就像书中说的: 专为低使用、性能和可扩展性而设计 DryIoc被认为是一个相对快速的容器。这是官员 但同样,这完全取决于需要实例化多少服务。如果你有2000页也没关系。重要的是,您对这些页面有多少依赖关系,还有多少依赖关系 此外,一些IoC逻辑正在应用程序启动时完成,您也可以匹配其中的一些解决方案
总而言之,拥有IoC容器比没有更好,因为你从中获得的灵活性超过了最终的小的性能开销。谢谢你的回答,但最坏的情况是,IoC和依赖性服务可能会让使用该应用的用户检测到减速吗?当然,可能会有。您添加的每个包都会增加用户的总开销。这里的想法是最坏的情况——是50页,每个页有1-2个依赖项,还是3000页,每个页有10个以上的依赖项。总的来说,答案应该是否定的。如果你有3000个页面,每个页面都有10多个依赖项,那么DryIoc对你的性能来说问题最小。