读书频道 > 网站 > 网页设计 > Windows 8应用开发入门经典
1.3 Windows应用程序开发的困境
14-05-12    奋斗的小年轻
收藏    我要投稿   

本文所属图书 > Windows 8应用开发入门经典

如果你是一名开发新手,那么本指南将是你快速学习Windows 8 SDK的最佳选择!由Microsoft专家组成的作者团队将指引你完成创建、部署、推广和销售应用的过程;该过程新颖独到,易于理解,而且成本较低。 Window立即去当当网订购

在Windows应用程序开发的发展过程中,技术和相关方法技巧产生了不同的分支。一个分支由本机开发构成,在Windows诞生早期使用C编程语言完成。另一个分支由托管开发构成,这种开发使用.NET Framework及其托管技术和语言。

由于特定于CPU的代码编译以及对Windows API和系统资源的低级访问,本机应用程序可以提供非常高的性能,这一点是托管技术无法达到的。但是,在编写业务应用程序时,使用本机代码要比在.NET Framework中采用托管代码工作效率更低,也更为麻烦。由于业务应用程序通常都要使用数据库,因此完全察觉不到托管语言的性能系统开销,应用程序将绝大部分时间都花在与基础服务和数据库进行通信上面。

当Windows应用程序开发人员查找适合某一特定应用程序的正确技术和工具时,他们可能会发现自己处于与Yossarian相同的困境中。Yossarian是Joseph Heller的小说《第二十二条军规》,纽约:Alfred A. Knopf,1995)中的投弹手。

在很多情况下,尤其是在编写桌面应用程序时,在本机开发和托管开发之间并没有最佳的选择。尽管WPF和Silverlight是非常出色的技术,可以创建出激动人心的应用程序,但它们并不能在本机代码中使用。WPF和Silverlight并未嵌入到操作系统的深层。例如,启动WPF应用程序需要一定的时间等待WPF子系统加载到内存中。在很多需要计算容量的情况中,.NET生成的结果可能要比本机代码差很多。

Visual Studio是这种分立共存情况的一个范例。它使用混合代码库。绝大多数组件都使用C++实现,但也有一些部件通过C#(使用WPF)实现。在用户启动应用程序后,启动屏幕应该立即弹出到屏幕上。这使用C++与GDI+实现,因此,WPF应该不够快。Visual Studio的代码编辑器使用WPF实现,因为它具有一个丰富且便于使用的工具集,可供在一个卓越的UI中承载如此复杂的一个组件。

在LOB应用程序开发中,工作效率是最重要的考虑因素。本机代码开发的性能优势并不会为应用程序增加过多的价值,因为在绝大多数情况下,数据库层会成为性能瓶颈。使用托管代码,业务应用程序的编程阶段通常会极大地加快速度,并且不容易出错。

因此,在编写桌面应用程序时,本机代码可提供最佳性能,但在这种情况下,你无法使用WPF和Silverlight丰富的工具集。当移动到托管代码时,可能会获得更高的工作效率,但会丧失最终应用程序的性能优势。在最终绝望的情况下,可以选用某些“混杂”的解决方案,就像Visual Studio那样,但是,在这种情况下,需要承担大量的系统开销。想要做出最终的决定并不是一件轻而易举的事情,不是吗?

在Windows 8中,这种情况发生了根本性改变。不管是具有HTML5/层叠样式表3(CSS3)/ JavaScript使用经验的Web开发人员、经验丰富的C++程序员,还是一直从事.NET开发的开发人员,所有人都会感觉到自己的知识足以开始进行Windows 8风格的应用程序开发,并且非常适合。没有人会像Windows刚问世时的C程序员那样拥有很多特权。所有人都可以使用相同的技术和相同的工具,不存在任何折中的技术或工具。这是如何实现的呢?具体细节将在第3章中介绍。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站