gpt4 book ai didi

windows-store-apps - 如何为全新的 Windows UWP 应用选择什么技术?

转载 作者:行者123 更新时间:2023-12-04 18:37:56 27 4
gpt4 key购买 nike

关闭。这个问题需要更多focused .它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .

5年前关闭。




Improve this question




这个问题 super 常见。这是上下文;开发人员可以使用广泛的技术创建面向通用 Windows 平台(在 Windows 10 上)的 Windows 应用程序:

  • XAML/.Net
  • XAML/C++
  • HTML/JavaScript
  • DirectX/.Net
  • DirectX/C++

  • 还有这些异国情调的方法:
  • Cordova/PhoneGap
  • 托管 Web 应用程序
  • 编译的Objective-C
  • 编译 Android Java(仅限手机)
  • Unity/MonoGame

  • 开发商该如何选择?

    最佳答案

    自然,答案是“视情况而定”。要考虑的第一个变量是您正在考虑的应用程序类型。如果您想编写游戏,选择并不是很明显。那是因为有些逻辑应用程序不依赖于精心设计的 UI,而沉浸式游戏则可以。

    逻辑游戏

    因为 XAML 和 HTML 是构建简单 UI 的更简单的平台,所以从以下选项中进行选择最有意义:

  • XAML/.Net
  • XAML/C++
  • HTML/JavaScript

  • 在这三者之间进行选择是技术偏好的问题。但同样值得注意的是,我们现在从 XAML 开始,并在必要时转到 HTML。我的意思是,新的 Windows 应用程序应该将 XAML 作为他们的起始技术,并在必要时选择其他技术。

    您可能选择 HTML 的原因之一是,如果您已经创建了多个要重用的 HTML Assets 。但是,当然,您也可以在 XAML 应用程序中嵌入 XAML WebView 控件并使用这些 HTML Assets ,而无需完整的 Web 应用程序。为此,XAML 仍然是最可行的选择。

    沉浸式游戏

    由于 HTML 和 DirectX 在第三方公司和游戏社区中获得了大量投资,因此从以下选项中进行选择是最有意义的:
  • DirectX/.Net
  • DirectX/C++
  • Cordova/PhoneGap
  • 托管 Web 应用程序
  • Unity/MonoGame

  • 值得提醒您的是,本文是关于“绿地”应用程序的,但即便如此,上述技术仍然是 Windows 应用商店中 99% 游戏的首选技术。

    The next category of apps are usually called productivity apps. And they have basically two sub categories: consumer and commercial. Consumer apps are public, while commercial apps are generally internal, line of business apps.



    消费者应用

    除了为用户提供全保真原生体验之外,公共(public)应用几乎没有任何技术要求。对于这些应用程序,您可以选择以下内容:
  • XAML/.Net
  • XAML/C++
  • HTML/JavaScript
  • Cordova/PhoneGap
  • 托管 Web 应用程序

  • 包含 Cordova 的原因是因为它基本上是具有跨平台附加优势的 HTML 选项。如果需要跨平台,这是一个不错的选择。我应该指出,Xamarin 也可以使 .Net 应用程序跨平台。

    有时跨平台不在列表的顶部。有时,它确实是一个全新的 Windows 应用程序。 当您处于那个典型的起点时,您需要从 XAML/.Net 开始。 为什么?有几个原因。

    第一 ,XAML 正在成为 Windows 的高级 UI 平台。 Windows 10 操作系统的许多新方面都是用 XAML 编写的(如开始、文件资源管理器等)。此外,Office 现在也是一个 XAML 应用程序。

    第二 ,大部分示例和社区支持都在 XAML/.Net 中。这意味着无论您的团队的主要技术专长是什么,由于 XAML 的流行,持续支持应该会越来越容易。

    第三 , .Net(如 C#)是您可以选择的最合乎逻辑、最强大和最简单的编程语言之一。它可以轻松支持从小到大的项目。此外,使用 .Net Native,.Net 语言可以编译为金属并在 Windows 10 上以接近 C++ 的级别执行。

    商业/业务线

    商业应用程序是一件大事,需要一些认真的投资。为什么?因为他们的目的是经营企业。它们需要经过测试、可扩展和高性能。它们需要集成和敏捷。所有这些有时都是消费者应用程序的一部分,但由于企业的生死取决于其基础架构,因此 LOB 应用程序是一项更重要的投资。

    For commercial apps, choose XAML / C#.



    这就是原因。

    由于您首先要编写 Windows 10 应用程序,因此我可以假设您的业务基于 Microsoft 或 Microsoft 友好。这意味着您的开发团队可能已经精通交付出色的 XAML/.Net 应用程序所需的基本技能。

    另外 ,由于我们的组件供应商(如 Infragistics)发布了第三方控件,您会看到用 XAML 编写的面向企业的控件吗?为什么?因为其中许多控件已经针对 WPF 发布,并且随着需求的增加将移植到 WinRT。

    另外 , Visual Studio 以全面且经过验证的方式管理、构建、测试和分析 .Net 项目。您正在使用 Microsoft UI 平台进行编写,并使用 Microsoft 开发平台将其自动化。大多数公司喜欢尽可能少的事件部件,这是尽可能纯粹的。

    另外 ,许多公司已经对他们的 LOB 系统进行了大量投资,并且有许多宝贵的投资可以在他们的 Windows 应用程序中重复使用。 Windows 应用程序是否正在替换其 LOB?可能不是。它是对现有系统的补充还是补充?很有可能,是的。

    结论

    那么什么时候应该使用C++呢?让我和你分享一个 secret 。几乎所有随 Windows 10 一起提供的第一方 Microsoft MSN 应用程序都是用 XAML/C++ 编写的。这是因为跨设备性能对我们的应用程序至关重要。这是否意味着您的应用程序应该用 C++ 编写?在大多数情况下,没有。

    如果我的团队是 Web 团队并且我们没有 XAML 或 .Net 经验怎么办?首先,这不太可能。但是,让我们一起去吧。我们是开发人员,该死。技术不在乎我们。而且,尽管语言不同,但它们在概念上是相同的。当您在性能和影响方面进一步向下看日历时,学习 XAML 和 .Net 等高端技术是值得的。

    现实是,有些人可能不同意。其他任何人所说的在某些方面都可能是对的。一般而言,这里的基本答案是,我们如何为从面向通用 Windows 平台的新 Windows 10 应用程序开始的未开发开发人员提供指导。这不是诫命,只是指导。

    If you are looking to learn more about Windows 10 app development using XAML and C#, take a look at this free, three day course on Microsoft Virtual Academy. https://channel9.msdn.com/Series/A-Developers-Guide-to-Windows-10



    最后,这里有一些您不应忘记的功能:
  • 跨屏尺寸适配
  • 跨设备的特性适应性
  • 应用洞察分析
  • 使用 .Net Logging API 进行日志记录
  • 在 TFS/VSO 上测试和自动化构建
  • 其他语言的本地化
  • 支持自动化/辅助功能
  • 使用应用商店部署、升级和许可

  • 祝你好运!

    关于windows-store-apps - 如何为全新的 Windows UWP 应用选择什么技术?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31350419/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com