我一直在将 WPF 用于一个远未完成的新项目。这是一个爱好项目,也是一个非常有用的项目。
我希望具有跨平台兼容性(即 Linux + Mac + Windows),但 Windows 是主要目标。我对 Web 语言以及 C# 和 Erlang 非常熟悉,但 C/C++ 不在其中,我讨厌 Java。因此,为我选择 WPF 是很自然的举动。
但是,在阅读了http://www.mono-project.com/WPF等众多资源之后:
在这一点上,我们强烈建议对 WPF 感兴趣的用户改用 Silverlight,因为它现在可以在浏览器之外使用,并提供一组丰富的跨平台 API 和功能。
我开始怀疑是否应该将我的应用程序移植到 Silverlight 并改用它。
几个事实:
- 我的应用程序是纯桌面应用程序,应该是这样。它需要对系统资源的较低级别的访问(但不是低到 .NET 还不够)。
- 我希望支持这三个平台,但 Windows 是主要关注点。
- 我更喜欢 C# 和 .NET 以及类似于 WPF 的东西,其中 UI 是声明性的,以干净的方式与代码分离,并允许丰富的用户界面。
我听说 Silverlight 已经在 Mac 上工作了,并且可以通过 Moonlight 支持 Linux。
我应该考虑从 WPF 切换到 Silverlight 吗?可能会出现什么问题?