Silverlight最佳做法

问题描述 投票:1回答:4

我的团队正在Silverlight中启动一个新项目。 我们都是经验丰富的开发人员。 使用公共API时,它应该不在浏览器应用程序中。 我们了解了MVVM模式。 还有其他一些针对Silverlight的指南/最佳做法吗?

添加:我们想知道的是:

  1. 除了MVVM以外,还有其他针对SL的模式/准则
  2. 单元测试Silverlight:您的经验。
  3. 出于浏览器行为,错误,问题?
  4. 消费网络服务,公共API,问题,优缺点?
silverlight mvvm
4个回答
3
投票

您可能想由Microsoft模式与实践小组签出Prism (复合WPF)。 他们那里有一些“最佳实践”示例,包括MVVM。 它们还向您展示了如何在Silverlight和WPF之间共享代码。

另外,请查看Silverlight单元测试框架 ,该框架使您可以对UI进行单元测试。


2
投票

我现在正在使用Silverlight,这是我使用此技术的第一个真实/完整应用程序。 我从一开始就使用MVVM Light Toolkit来使用MVVM。 这是一个非常轻巧实用的组件,可帮助您处理mvvm并克服其约束。 然后,我实施了Managed Extensibility Framework(MEF) ,它可以帮助您使应用程序模块化,并且它似乎可以完成/替代MVVM工具包。

我不想在开始时使用PRISM,因为我的应用程序很轻。 但是,当使用MVVM模式时,您必须处理许多模式限制。 因此,仅在具有基本数据应用程序的情况下,仅此一项就足够了。 否则,您将需要重新发明轮子,最后发现一个很棒的框架(类似于PRISM)将解决您几乎所有的问题。


2
投票

我已经完成了一个重大项目(技术上仍在进行中)。 在Silverlight项目上工作时,我发现自己同时使用Blend和Visual Studio。 Blend在可视化工作方面要好得多,但对于代码来说却很糟糕,而对于Visual Studio而言则相反。

我使用了MVVM Light Toolkit。 对于下一个项目,我将尝试Prism。 还有其他框架,但据我所知,这两个都对Silverlight或WPF都有好处。

我开始对某些东西使用MEF,但为了简化工作而不是尝试完成所有事情,将其删除。 如果可扩展性对于您的应用程序构想至关重要,那么MEF似乎是必须具备的。

我建议花一些时间来熟悉和熟悉VisualState元素,我发现它简化了很多事情。 诸如启用,禁用,动画设置,过渡等操作。

液体控件( http://www.vectorlight.net/demos/silverlight_controls_demo.aspx )很不错,使用它们可能会让您受益。

WPF可能是您的Twitter应用程序的更好选择。 据我了解,WPF中的排版和文本支持要比目前的Silverlight 4更好。 如果您不打算与任何一种异国情调,那么SL 4应该很好。


2
投票

我们正在进行一个有2年超时的项目。 我们的项目是一个具有Rich UX的数据驱动的应用程序,我们的经理完全可以预测200K代码和400多个用例,因此我们开始了对不同方法的调查,得出的简要结论是:

  • MVVM Light工具包( Messenger类具有强大的功能)
  • WCF与服务器数据库进行交互(调试功能,我们更喜欢通过ADO.Net使用DB,实际上是手写的代码!)

以及我们通过Silverlight 4Microsoft Silverlight 4数据与服务食谱Pro Business Applications获得的总体非常详细的信息

© www.soinside.com 2019 - 2024. All rights reserved.