写点什么

UWP 应用在企业中面临的挑战

  • 2018-01-28
  • 本文字数:1109 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

自 Windows 10 面世,微软就将通用 Windows 平台(UWP)定位成未来所有 Windows 应用程序的平台。UWP 扩展了 Windows 8 以触控为中心的设计,提供了一种通用应用程序包,可以部署到所有运行 Windows 10 的设备上:传统桌面、平板电脑、Xbox One 和 HoloLens。那些希望用一种现代化的技术替换 Windows Presentation Foundation(WPF)和 WinForms 应用程序的开发人员发现,UWP 的触控优先设计在某些方面存在不足。

近日,长期从事企业软件开发的 Dean Chalk 写了一篇关于现状的信息评论,探讨了他为什么认为微软偏离了目标。文章标题为“微软及其UWP 企业幻想”,Chalk 的核心观点是,UWP 不是为构建传统业务线桌面应用程序而设计的,也就无法成功地扮演这个角色。

首先,Chalk 指出,业务应用程序并不适应移动优先的理念。传统宽屏显示器、鼠标和键盘的生产力很难通过iPhone 的屏幕键盘来实现。除了易用性之外,与必须支持触控式人机界面的智能手机App 相比,桌面应用程序可以提供更高的信息密度。

Chalk 解释说,触控式应用程序面临的其中一项挑战是,它们恰恰不是桌面环境下符合人体工程学的人机界面。使用键盘和鼠标输入要准确得多,也快得多,而且不那么耗费体力。根据曾经开发复杂财务应用程序的经验,Chalk 指出,屏幕的每个像素都很重要,因此,在他的开发中,为触控友好的控件花费昂贵的不动产是种浪费,经常还是无效的。

通过幻灯片可以看出,Chalk 认为,传统 WPF 应用程序容易调试得多,因为它们使用 MSTL 和 BAML,而且面向的是通用语言运行时(CLR)。与 UWP 方法相比,查找 Bug 及调试应用程序流程都要简单得多。那些应用程序被编译成机器代码,并使其成为 COM 包的一部分,极大地增加了复杂度。在某些情况下,这让调式变得几近不可能。

让 Chalk 的文章变得有趣的是它引发的评论。Tim Sneath 最近刚刚从微软项目经理的位置上离任,现在从事谷歌 Flutter 的研发。他认同 Chalk 的观点,并指出,WPF 基于 Windows XP 时代首次出现的 DirectX 9 构建。Sneath 在评论中分析了他在微软任职期间微软使用的桌面应用程序方法。Sneath 相信,微软走入了一条死胡同,这最终让他加入了谷歌Flutter App SDK 的开发。对于Windows 开发人员而言非常遗憾,Flutter 面向iOS 和Android 应用,对于那些继续开发桌面应用程序的开发人员助益甚微。

在Reddit 上的讨论中,人们的反应各有不同。在许多情况下,评论者并不同意Chalk 的观点。有人的说法和他相反,许多公司用户确实想要移动应用,而其他人则觉得基于Web 的技术就足够。

查看英文原文 The Challenge of UWP Apps in the Enterprise

2018-01-28 18:002613
用户头像

发布了 1008 篇内容, 共 448.5 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

中年人的沉重 2

张老蔫

28天写作

11 张图 | 讲透原理,最细的 Eureka 增量拉取

悟空聊架构

悟空聊架构

资产数字化的当下,数据隐私危如累卵

CECBC

新晋 CNCF 沙箱项目 OpenClusterManagement 带来了它的最新特性

阿里巴巴中间件

阿里云 中间件 KubeVela cncf OCM

解密 Dubbo 三大中心的部署架构

阿里巴巴中间件

阿里云 微服务 云原生 dubbo 中间件

模块一作业

Geek_e6f7f6

架构实战营

一场关于元宇宙公司之死的剧本杀

脑极体

四步轻松玩转微服务敏捷开发

阿里巴巴中间件

阿里云 微服务 云原生 敏捷开发 中间件

说出你和「云原生」的故事,获得年度云原生顶级盛会通行证

阿里巴巴云原生

阿里云 开源 云原生 投稿

架构实战训练营|课后作业 模块 5

Geek_6bb688

SpringCloudAlibaba微服务技术栈精讲大合集

XiaoLin_Java

内容合集 签约计划第二季 技术专题合集

如何在信息不完备下进行快速决策?

石云升

决策 28天写作 职场经验 12月日更

架构实战营模块五作业

渐行渐远

架构实战营

超基础的机器学习入门-原理篇

凹凸实验室

机器学习 AI 低代码平台

6000字 | 深入理解 Ribbon 的架构原理

悟空聊架构

悟空聊架构

快速云原生化,从数据中心到云原生的迁移最佳实践

阿里巴巴云原生

阿里云 云原生 实践 迁云方案

32 K8S之DaemonSet/Job/CronJob控制器

穿过生命散发芬芳

k8s 28天写作 12月日更

RocketMQ这样做,压测后性能提高30%

中间件兴趣圈

RocketMQ 性能 Apache RocketMQ

未来,区块链将在这些领域广泛应用!

CECBC

硬核图解 SpringCloud 源码系列

悟空聊架构

SpringCloud 悟空聊架构 内容合集 签约计划第二季 技术专题合集

博文推荐|多图科普 Apache Pulsar

Apache Pulsar

开源 架构 分布式 云原生 Apache Pulsar

Android C++系列:Linux进程间关系

轻口味

c++ android 28天写作 12月日更

架构训练营第3期模块5作业

吴霏

架构训练营

Google 宣布将 Knative 捐赠给 CNCF

QiLab

Google Knative cncf

车用能源的终极:氢能车落地普及还要多久?

脑极体

vue框架的组件与组件通信方法

Changing Lin

12月日更

iOS Pod Update 指数级变慢?看 Flutter 新一代仲裁算法 Pubgrub 如何解

阿里巴巴终端技术

flutter ios 算法 仲裁

8 张图 | 剖析 Eureka 的首次同步注册表

悟空聊架构

后端程序员福利套餐,22份资料合集,你能想到的关键技术,都在这里

奔着腾讯去

c++ golang Linux 音视频 学习资料

AI:人工智能 or 异类智能(Alien Intelligence)

mtfelix

28天写作

模块5-微博评论高性能高可用计算架构分析

小何

「架构实战营」

UWP应用在企业中面临的挑战_.NET_Jeff Martin_InfoQ精选文章