Windows 8让开发者痛苦的十大原因

openkk 13年前
     <blockquote>     <p>如果你有计划开发基于 Windows 8 的本地应用,那就要提前做好心理准备了。具体要做好哪些心理准备呢?来自 Levit & James 公司的工程师 Justin James 在博文《<a href="/misc/goto?guid=4958322349169857912">10 reasons Windows 8 will be painful for developers</a>》中列举了十件在开发过程中可能会遇到的痛苦的事。下面是该文的译文:</p>    </blockquote>    <p>        Windows 8 开发者预览版自发布以来,其用户体验引起了大家的广泛关注和热议,但却很少有人谈论它给开发者所带来的影响。Windows 8 是自 Windows 3.X 发展到 Windows 95 以来的最大的一次升级。其中有好的方面,同时也有不好的方面。如果你希望基于 WinRT API 开发具有 Metro 风格界面的 Windows 8 本地应用,你就要注意以下十件事。</p>    <p>        <strong>1. 新的市场格局</strong></p>    <p>        如果希望你开发的应用可以与 Windows 8(包括运行于 ARM 结构的 CPU 之上的 Windows 8)完全兼容,你就需要基于 WinRT/Metro 重写你的应用。对于希望进入这个市场开发者来说当然是好事,但对于已有成功应用的开发者来说,在这个平台上一切将要重新开始。</p>    <p>        <strong>2. 异步模型</strong></p>    <p>        开发任何长期运行的 Windows 8 应用,在很大程度上依赖于异步操作。在某些情景下,这可能是一个很好的解决方案,但在其他情况下却很难行得通(如下载文件)。它不仅仅用来解决异步调用的 问题,它更要解决诸如错误处理、向用户提供反馈之类的问题。它要求全新的 UI 设计方案,与 WinForms 开发者所使用的界面完全不同。</p>    <p>        <strong>3. 限制直接访问硬盘</strong></p>    <p>        Windows 8 在很多方面限制了对系统的直接访问,最令开发者犯难的是对硬盘的访问限制。Windows 8 对应用采用了隔离模式,如果应用需要访问外部数据(包括网络服务),那么你就可以放弃把它移值到 Windows 8 上了。</p>    <p>        <strong>4. 触摸式 UI 界面</strong></p>    <p>        除非你曾开发过大量的移动应用,否则在设计 Windows 8 新风格 UI 界面时会遇到相当多的麻烦(因为此 UI 界面要实现触摸交互功能)。我曾花了很长时间才对此类 UI 界面的设计有了一定了解。在靠鼠标和键盘控制的屏幕上可以很好展现与工作的界面在触摸屏上的体验可能会很差,反之亦然。它们之间的平衡很难把握。尽管微软 对 Metro 风格界面的体验已有多年研究,但它也在努力试图搞明白这一难题。</p>    <p>        <strong>5. 把握好微软应用商店的规则</strong></p>    <p>        如果你希望利用微软应用商店,你就要搞清楚它的规则。尽管规则很合理,但如果它像 WP7 App Hub 一样,它将会带来很大的不和谐。对于初来者,微软会很严格检查他们的应用,寻找所有问题,比如未处理的异常。虽然这可以保证高质量的应用,但却会让开发者 很远离。另外,你还需要遵照审批流程。微软应用商店的详细内容仍未公布,但根据之前 WP7 体验来推测,它也可能会令开发者失望。</p>    <p>        <strong>6. 过于强调云计算</strong></p>    <p>        虽然微软并没要求使用云计算、Web 服务器及其他技术,但很明显这些是被鼓励使用的。像自动同步设置,设备之间数据的传输等都将成为基本规则,毫无例外,用户也将期待使用这些功能。 Windows 8 可以很容易的做到这些(你可以将在本地保存的信息自动同步到 Live 上),但你要小心处理敏感数据。加密和其他隐私、安全技术将变得越来越重要。</p>    <p>        <strong>7. 协议和接品之间的交互</strong></p>    <p>        Windows 8 所独具有的思想,即应用可以向操作系统提供服务(如提供联系信息、图片),而不再仅仅把数据存储在普通的目录下。虽然在技术层面比较容易,但要把它上升到理念层次就比较困难了。</p>    <p>        <strong>8. 市场的不确定性</strong></p>    <p>        下面将介绍一个更高层次的痛点。很清晰,微软正为平板电脑推出 Windows 8,也可能再推出针对 Windows Phone 的 Windows 8。现在我们可以清晰的看见 Android 正占领平板电脑市场,同时,只有试图尝试 Windows 8 开发者预览版的人才会使用 Metro 风格的 UI 界面。再者,Wetro 风格的体验本来就是针对触摸设备的,而预览版只能安装于虚拟机上,所以使它真正达到平板电脑的体验还是很困难的。</p>    <p>        另外,见过 Windows 8 开发者预览版本的用户并不代表其就是典型用户。Windows 8 是否符合这个市场?微软是否会完全放弃 Metro 风格的 UI 界面?Windows 8 平板电脑的市场前景如何?现在很难下定论。</p>    <p>        <strong>9. 缺少平板电脑硬件产品</strong></p>    <p>        没有平板电脑试运行 Windows 8 是一个严重的问题。同时你也无法判断你的应用程序在这些平板电脑上的体验是否被用户所喜欢,无论 UI 还是性能。</p>    <p>        <strong>10. 存在已淘汰技术的痕迹</strong></p>    <p>        这一点最伤我的心。微软曾有过把一项技术作为未来的重大发展技术,而几年后此技术便半路夭折的历史。我们不清楚微软是否会在 Windows 8 发布前、发布后而松懈(如 Kin),Windows 8 几年之后是否会走下破路(如 Zune、Silverlight)。如果 Windows 8 不能获得成功,微软可能会另拓新径,而你在 Windows 8 上所做的一切努力将被放弃。</p>    <p>        原文链接:<a href="/misc/goto?guid=4958322349169857912"><strong>10 reasons Windows 8 will be painful for developers</strong></a></p>    <div id="come_from">           来自:     <a id="link_source2" href="/misc/goto?guid=4958322350729298734" target="_blank">CSDN</a>    </div>