首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该如何设计我的Silverlight应用程序?

我应该如何设计我的Silverlight应用程序?
EN

Stack Overflow用户
提问于 2009-08-05 22:27:44
回答 2查看 1.4K关注 0票数 8

到目前为止,我一直在创建Silverlight应用程序,所有逻辑都压缩到一个xap文件中。但随着应用程序大小的增长,我真的认为我应该将Silverlight应用程序拆分成更小的多个独立应用程序。

我想知道其他人是如何解决这个不断增长的规模问题的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-08-05 22:54:48

如果您希望通过重构和拆分部分来对应用程序进行一些更改,请考虑所有这些内容。

自定义控件获得自己的控件程序集

一定要为您开发的任何自定义控件创建控件程序集。您不仅可以获得自包含控件的好处,还可以在当前和将来的项目中选择使用,还可以

  • 利用默认控件样式
  • 使用缓存的程序集功能
  • 与核心代码和控件中的其他控件共享组件,而不是投资于清理应用程序逻辑(例如,如果您正在使用静态或样式分析)-将时间花在对

影响最大的地方

考虑动态加载新程序集

你的应用程序域中有一些methods available for dynamically loading additional code,可以抽象出你的应用程序中不经常使用的部分,并使用它来加载这些组件。这是一个更加复杂和复杂的应用程序,但它可以提高启动性能。

当您查看大型应用程序时,将代码拆分到其他程序集中需要时间,并且测试它可能是一项挑战。但你最终可能会得到“子页面”和应用程序的一部分,只有在需要的时候才会加载。

花时间设计一个系统来加载你的应用程序的新功能和部分,并架构这个框架,这可能需要时间来做正确的事情。这通常是使用AssemblyPart加载一个新程序集,您可以将该程序集反射到其中并从中实例化新对象。

合并的资源字典

Resource dictionaries允许您在页面和App.xaml外部存储样式、控件模板和其他资源。

缓存的程序集

一旦你迁移到Silverlight3,你就可以使用cached assemblies feature在.Xap之外的服务器上存储单独的程序集--作为一个额外的好处,这些程序集将在机器上缓存相当长的一段时间。

一种资源饮食

您是否真的在使用存储在XAP文件中的所有图形资产、XAML、控件、字符串资源等?时不时地检查它,并确保你的字节得到了最大的回报。

闪屏

如果您最初只是想提高应用程序的性能(下载时间),那么可以考虑创建一个闪屏。Silverlight Toolkit samples有一个Silverlight页面,它是一个简单的Silverlight页面,可以在下载.Xap时加载和显示。

远程图形

不要将图像资源直接包含在您的应用程序/XAP中,而是将您的图像移动到您的CDN或服务器,以便仅在需要时加载它们。这通常是一个好的和快速的胜利。

简化您的应用

确保你确实需要它是XAML重量级的,图形重量级的,等等。也许它可以简化!

票数 17
EN

Stack Overflow用户

发布于 2011-07-14 18:00:56

您应该使用PRISM或MEF框架分发Silverlight模块。

访问http://mef.codeplex.com/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1236092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档