Dav*_*Dev 6 c# wpf user-interface desktop-application
我的任务是制作一个具有'性感'**外观的桌面应用程序.我打算用WPF来实现这一目标.其中一个要求是桌面应用程序稍后将扩展为ASP.NET MVC Web应用程序,然后扩展到移动(可能是Android第一)应用程序,同时保持相同的外观和感觉.
**在这种情况下,"性感"意味着滑动菜单,以及一般的现代外观和感觉
考虑到这一点,如果我想重用组件(和/或)样式,在开始桌面UI设计时最好的方法是什么?
例如,在创建桌面应用程序时,我将使用XAML作为UI,但考虑到应该看起来与桌面相同的应用程序的Web版本,我应该/可以使用HTML/CSS吗?想到这一点是否荒谬?
这个问题你会得到 1000 个答案,但我认为这不太可能。我将尝试解释原因(仅考虑用户界面)。
对我来说,重点不是你可以重用什么,而是你应该重用什么。
桌面应用程序、Web 应用程序和移动应用程序是不同的。不同的目标、不同的用户界面、不同的标准。例如,您使用最喜欢的文字处理程序的方式适合桌面应用程序(菜单、功能区、上下文菜单和其他任何内容),但它不适合 Web 应用程序的外观和感觉。在您导航的Web 应用程序中,可能没有很多对话框,用户可以在页面之间来回移动。现在想象一下同样的移动应用程序!它必须设计为可以用手指使用,按钮必须很大,并且根本不应该有对话框(而且我过度简化了主题)。
对于这些平台来说,应用程序甚至不应该是相似的,每个平台都有自己的特征和准则。如果您不遵循它们,即使您的应用程序的 UI 非常性感,您的用户也不会感到舒服。如果你想为网络编写一个好的应用程序,那么请确保它会与桌面版本有所不同(有时,但这取决于应用程序的类型,完全不同),而移动版本会更加不同(即使无论语言如何)和开发环境)。
您想象一下 StackOverflow 网站的桌面版本吗?您认为它的外观和行为应该相同吗?我想你的答案将会是“不”,即使我们都欣赏 SO 在网络上的工作原理。
看看这个:
即使没有针对网络的标准指南,也请看一下这篇文章(并想象一下将该技巧用于桌面应用程序):
您可以看到多少个接触点?此外,对于一组有限的应用程序,您可以稍微融合 Web 的 UI 和桌面的 UI(移动应用程序在使用中总是有很大不同),但这取决于您拥有的用户类型以及他们的背景和经验。
如果您使用 WPF 编写应用程序,您可以重用部分代码来构建 Silverlight Web 应用程序。我确信您不会重用所有内容,因为对于现实世界的应用程序来说,它们的差异太大了。
对于 Android(甚至考虑为 Mono 编写),您根本无法重用它们(好吧,它将作为参考,但您必须重写)。当然,如果您使用 Windows Phone,您的 XAML 甚至您的代码都将被部分重用。
使用 HTML/CSS 的想法还不错,您可以用 HTML5/CSS3/JavaScript 编写桌面应用程序,它可以在任何地方运行(Windows 8 桌面、网络和移动设备)。好吧,至少做了一些修改。
不要忘记可以从移动设备使用网络应用程序。您可能需要使用适当的 CSS 来完善应用程序(也许还需要使用您最喜欢的 JavaScript 框架的移动版本),但这并不是一项艰巨的任务。
归档时间: |
|
查看次数: |
2248 次 |
最近记录: |