Windows Silverlight或RT。对Windows Phone开发有何影响?

时间:2015-02-21 12:23:26

标签: c# silverlight windows-phone-8

我正在为Windows Phone启动一个项目,我之前从未为Windows Phone或.Net开发过。

当我在Visual Studio Community 2013中创建一个新项目时,我可以为Windows Runtime或Silverlight创建它。

我想跟TDD一起使用某种模拟框架,但我知道WinRT有问题。

这个决定有多重要?每个人的含义是什么? 可以在WinRT中使用模拟机制吗?

由于

2 个答案:

答案 0 :(得分:2)

简短的回答是坚持使用通用app和winrt。这是Windows开发的未来。您将获得更好的代码重用,并且框架从最初设计为完全异步。 Silverlight更多是传统的做事方式,我怀疑随着时间的推移,它的使用会越来越少。 TDD也不是问题。

这个决定有多重要? 在这个时候,除了通用应用程序之外,我不会想到任何东西,我真的不会看到它们无限期地支持Silverlight。 WinRT的一大好处是它的设计主要是异步友好。这对于移动开发来说是一个很大的优势,并且可以保持UI响应。

每个人的含义是什么? Silverlight是遗留的,并没有内置的基于异步的组件.WinRT是为异步而设计的,是一个构建在Win32之上的框架。

可以在WinRT中使用模拟机制吗? 但是,在添加测试之前,我总是专注于学习一般的开发框架。随着你在语言中变得更加舒适,看看如何使事情变得可测试。

希望有所帮助。

答案 1 :(得分:0)

我同意Spencer关于WinRT的回答是Windows开发的未来发展方向。

基本上你应该去Windows Store(基于WinRT),除非以下问题成为你的应用程序的阻碍或高度关注:

  1. 有一些功能只有Silverlight支持,如"规则的少数例外"第https://msdn.microsoft.com/en-us/library/windows/apps/hh452743.aspx节。我认为未来的WinRT SDK版本将至少解决其中一些缺失的功能,但在微软宣布之前没有什么是明确的。

  2. 关于模拟,工具集更受限制,没有非WinRT但有解决方案。 What is the mocking framework of choice in Unit Test Library for Windows Store Applications?解释了这些限制。

    我个人正在使用http://www.nuget.org/packages/WP-Fx.EasyMoq/1.1.1(文档:http://wp7fx.codeplex.com/wikipage?title=WP-Fx.EasyMoq&referringTitle=Documentation),这符合我团队的需求。

    https://stackoverflow.com/a/12556114/3998132通过将可测试代码重构为非特定于WinRT的解释来解释另一种方法。

    总的来说,有一些模拟解决方案,但解决方案并不像非WinRT世界那样在开发方面表现得如此活跃。我希望这会在不久的将来发生变化。