Windows 8 应用框架理解及开发工具使用实例教程 |
本文标签:Windows8,应用框架 Windows 操作系统之所以风靡世界,是因为其“易学易用”,从用户的角度出发,让数以万计的非IT人员使用计算机实现娱乐,工作等目的 。Windows 8继承Windows桌面的优点,同时提供一种新的用户体验模式 - Windows store风格 。换句话说,Windows 8操作系统存在两种不同风格的应用 。 本篇将介绍Windows 8应用框架以及开发工具的使用 。 理解Windows 8应用框架 正如前文所说,Windows 8具有两个不同风格的应用,Windows store应用和传统Windows桌面应用 。两种风格应用使用不同的UI引擎,不同的服务和工具,以及不同的API. 但是,都运行在同一个Windows 8操作系统内核下 。
我们简单对比一下两种应用: Windows store应用 传统Windows桌面应用 Windows store应用增加触控操作,独特的手势操作,提高用户体验性 传统桌面应用主要操作模式是基于鼠标和键盘操作应用 应用开发基于.Net Framework Windows 8 API 应用开发基于Win32 API,或者Net Framework Windows store应用不推荐大量使用对话框进行人机交互,而推荐使用页面导航的模式进行交互,这种方式更象使用浏览器前进后退的功能进行交互 。 传统应用以对话框为主要人机交互方式 在部署方面,用户不需要了解应用安装文件等信息,仅需要在Windows store下载安装即可 。 在部署方面,传统桌面应用需要一定的安装和注册流程 Windows 8传统桌面应用框架 Windows 8传统桌面应用可以根据分为三类,分别是Win32应用,.Net应用和HTML应用 。 1. Win32应用主要开发语言为C,C++或VB 。该应用被直接编译为CPU代码运行在Win32 API上,其用户界面实现必须使用GDI或者GDI+ 。 2. .Net应用主要开发语言为C#,VB.NET 。该应用被编译为中间语言(IL),然后再被转换为CPU代码运行在CLR(Common Language Runtime)环境 。其用户界面实现使用XAML语言 。 3. HTML应用主要开发语言为HTML/CSS和JavaScript,该应用基于浏览器运行 。
Windows store应用框架 基于相同的Windows 8操作系统内核,Windows Store应用共享相同的API层,称为Windows Runtime APIs 。无论使用C/C++,或者基于.Net的C#/VB.NET或者HTML5/JavaScript任何一种开发语言都可以轻松调用WinRT API类库,实现本地应用操作 。 值得一提的是,微软综合当前最流行的HTML5/CSS3/JavaScript技术,使Web开发人员可以轻松开发Windows store本地应用 。另外,基于XAML的Silverlight和WPF技术都成为Windows 8操作系统部分,不再需要安装插件支持 。而Silverlight/WPF开发人员,可以继续使用相关开发技能从事Windows Store应用开发 。 Windows Runtime框架 从上面图例可以看出,Windows Runtime是Windows 8应用框架重要组成部分之一 。微软将WinRT视为继2002年.Net Framework发布后最大的革新 。作为Windows Store应用设计和开发人员,从微软设计原则考虑,Windows Runtime不仅仅是一套简单的API类库,而是一套独立完整的能够支持Windows Store应用风格的运行环境 。
Windows Runtime的优点: 1. WinRT运行在Windows 8核心层之上,为Windows Store应用提供API支持访问本地资源,例如GPS,摄像头,麦克等 。 2. Windows Store应用运行在安全沙箱中,所以,该应用可以被认为安全的managed的应用 。当应用尝试使用未授权本地资源时,WinRT将提示用户是否赋予系统存取权限 。 3. 传统Win32 API独立于操作系统内核服务,而WinRT是Windows 8操作系统组成部分之一 。 与Win32相比,WinRT更加稳定,其内存管理更加优化,对于应用和系统性能都有很大的提高 。 4. WinRT支持本地异步操作,这是对于移动设备而言至关重要的特性 。 语言映射层(Language Projection) Windows 8应用支持多种开发语言,而不同开发语言,需要通过Language Projection映射到Windows Runtime运行环境,开发人员不需要担心语言之间的转换,整个过程都是编译器自动完成 。 值得一提的是,通过语言映射层,开发人员可以在同一个项目中使用不同的开发语言开发项目功能,在随后的文章中,我将提供相应实例演示 。 如何选择Windows Store应用开发语言 对于Windows Store应用开发语言选择,有以下几个建议提供参考: 1. 对于具有Windows应用开发经验的开发人员而言,C#和C++是最好的选择,相比而言,C#基于.Net Framework,其应用为Managed,比较容易学习掌握 。而C++更加贴近底层应用开发 。 2. 对于具有Web应用开发经验的设计和开发人员而言,HTML5/CSS3/JavaScript是最好的选择 。类似PhoneGap框架,Windows 8将提供一个Web Host承载运行编译后的HTML应用,使其达到本地化的效果 。 3. 对于具有宏操作经验的开发人员而言,VB.Net是一个不错的选择,其应用开发与微软Office VBA应用开发类似 。 今天就说到这里 。 |