Xamarin - xaml 中的命名空间声明会影响性能吗?

Xamarin - will namespace declaration in xaml affect performance?

有人知道 xaml 中的 namespace declaration 是否对性能有影响吗?例如,

<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"            
            xmlns:local="clr-namespace:MyStaticDefinition">

其中 xmlns:local="clr-namespace:MyStaticDefinition" 包含我所有的静态变量定义。

据我了解,reduce resource dictionary size 会提高性能;但我在 xaml

中找不到任何关于名称空间声明的在线信息

所以...也是:

  1. 在页面中声明多个命名空间会影响页面加载时间吗?
  2. 程序集的大小影响页面加载时间?我的 MyStaticDefinition class 中的示例,有 1 个静态变量与 100 个静态变量

我一直在研究 Xamarin.Forms 中的 XAML 解析器代码,我会说在 [=23= 中指定大量 XML 命名空间对性能的影响] 文件可以忽略不计。

当然,命名空间被加载到类似这样的结构中:IList<KeyValuePair<XmlName, INode>>。这当然会随着您拥有的命名空间数量的增加而增长,之后从该列表中获取特定的命名空间也需要一些时间。

解析时间也会随着您添加的每个命名空间而增加。另外,是的,XAML 文件越大,反序列化和解析它所需的时间就越长。

但是,拥有 2 个或 15 个 XML 命名空间不会有太大区别,因为这只是加载此信息所需的一次传递。

您可以 inspect the code in XamlParser 自己尝试评估性能命中率。