欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

Windows 8 让开发者困恼的十个原因

程序员文章站 2022-03-03 15:51:42
...
随着Windows 8开发者预览版的发布,人们对这个新的操作系统有很多意见想发表。但是很少有人谈到Windows 8对程序员的影响。Windows 8是自从Windows 3.x 到 Windows 95以来,开发模型最大的一次升级。虽然这次升级带来了很多好处,但是也带了很多让人痛苦的地方。如果你正在研究Windows 8本地应用的Metro UI和WinRT API,你应该注意下面十点:


1. 应用市场重新瓜分

如果你想让你的应用完全兼容Windows 8的话(包括支持ARM CPU),你需要用 Metro/WinRT 完全重写你的应用。这对很多新进这个市场的开发者来说是个好事,但如果你是现有应用的开发者的话,你会发现你的优势一下子没有了。

2. 异步模型

Windows 8的开发模型是高度以来异步操作的。这在有些场合是一个很好的方案,但也有时候让人抓狂,例如下载文件。新的异步模型不光是处理异步调用,包括错误处理、问题回馈给用户等等都是异步的。这就要求一个全新的UI方案,特别是对于习惯了WinForm的开发者来说。

3. 缺少直接的磁盘访问

Windows 8不允许直接的系统级访问,最麻烦的就是开发者不能直接访问磁盘。Windows 8采用了一个极端的分离模型,如果你的应用必须访问非自身的数据的话,你基本上可以放弃Windows 8了。

4. 触摸UI

除非你已经习惯了编写移动应用,否则转移到新的触摸式的UI风格还是很头疼的。适用于鼠标和键盘的UI,并不一定适用触摸屏,反之亦然。

5. 需要适应微软App Store规则

如果你想要加入微软的App Store的话,你就必须适应它的游戏规则。虽然规则看起来还算合理,但是让人感觉很束缚,正如WP7的Store那样。

6. 重度强调云计算

虽然并没有强制要求使用Cloud、Web Services等新型的技术,但微软是很强调这些技术,并推荐它们的。在不同的设备中自动同步设置和数据将是一个默认的规则,用户也会默认它存在。这就意味着你必须小心处理敏感数据、加密等问题。

7. 协议和接口式的交互

Windows 8的编程模型是,应用可以作为服务提供方,为系统或者其他应用提供服务和数据,例如联系人、图片。这种编程方式的转变,对于习惯了直接访问数据的开发人员来讲,也是一种挑战。

8. 市场的不确定性

微软正在推动Windows 8在平板和手机上的应用,而Android也正在疯狂地掠夺这块市场。新的Metro UI似乎受到了开发者的一致批判,但是Metro又在触摸市场获得好评。目前用过Windows 8的还都是开发者,并不代表普通用户。Windows 8能否被普通用户接受并普及还是一个未知数。

9. 缺少平板硬件

大部分对Windows 8的批判都来自于没有真实的平板设备去运行Windows 8,也就无法真实的体验到Windows 8。不论是UI还是性能,你并不知道你的应用能否在正常的平板设备上运行。

10. 前途不明的技术

这是最令我心痛的一点。微软常常宣布一项“具有划时代意义的”技术,然后就任其自生自灭,例如Kin、Zune、Silverlight、Live等。谁知道微软会不会对Windows 8从一而终?

Via  http://www.techrepublic.com/blog/10things/10-reasons-windows-8-will-be-painful-for-developers/2885