写点什么

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:001949
用户头像

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

关注

评论

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

架构师训练营 1 期第 10 周:模块分解 - 作业

灵霄

极客大学架构师训练营

也谈“中年焦虑”

程序员架构进阶

方法论 职业规划 中年危机

简明设计模式—创建型

2970

设计模式 Go 语言

架构师训练营第六周作业

Geek_xq

京东将上线社区团购“京喜拼拼”:社区团购是否是一次泡沫大战

石头IT视角

工具词典:Inner Peace

lidaobing

随机漫步的傻瓜 28天写作

【Java并发编程】阿里最喜欢问的几道线程池的面试题?

root

Java 面试 线程池

智慧公安情报研判大数据系统分析平台搭建

t13823115967

智慧公安

架构师训练营第六周总结

Geek_xq

架构师训练营第五周”技术选型一“总结

随秋

极客大学架构师训练营

一代版本一代神:利用Docker在Win10系统极速体验Django3.1真实异步(Async)任务

刘悦的技术博客

django python3.x 异步 异步任务

自研ARM芯片,亲手拆掉Wintel联盟,微软这次是认真的吗?

脑极体

架构师训练营 1 期第 12 周:数据应用(一) - 作业

灵霄

极客大学架构师训练营

架构师训练营 1 期第 13 周:数据应用(二) - 作业

灵霄

极客大学架构师训练营

智慧警务平台搭建,大数据时代下的警务模式

t13823115967

大数据

即构低延迟直播产品L3,打造更优质的实时互动体验

ZEGO即构

像用户一样测试:不妨犯傻

QualityFocus

软件测试 体验 可用性 用户体验

重学JS | 数组去重的7种算法

梁龙先森

大前端 编程语言

重磅盘点!2020年区块链行业十件大事

CECBC

区块链

架构师训练营 1 期第 11 周:安全稳定 - 作业

灵霄

极客大学架构师训练营

专家:区块链底层技术创新是关键

CECBC

区块链

如何给团队制定合理的季度绩效?

Alan

团队管理 绩效 七日更 28天写作

架构师训练营 1 期第 8 周:性能优化(二)- 作业

灵霄

极客大学架构师训练营

架构师训练营 1 期第 9 周:性能优化(三)

灵霄

极客大学架构师训练营

【Java并发编程】面试必备之线程池

root

线程池

Devil Fruit恶魔果实APP系统软件开发

系统开发

AI技术在音视频领域的发展

anyRTC开发者

人工智能 ios android AI WebRTC

重学JS | 找出数组中出现次数最多元素的4种算法

梁龙先森

大前端 编程语言

生产环境全链路压测建设历程 22:FAQ 1&2

数列科技杨德华

全链路压测 七日更

IDEA插件:多线程文件下载插件开发

Silently9527

Java 多线程 idea插件 文件传输

面试官:我问的是Java内存模型,你回答堆栈方法区干嘛?

Java鱼仔

Java 程序员 JMM 多线程 并发

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