• Windows 8实例教程系列 理解应用框架



     

     

    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应用开发类似。
     
     
    今天就说到这里。

    学习XAML描述语言,请看:Windows 8 XAML实例教程系列

    欢迎加入Q群或者微博讨论学习:

    22308706(一群) 超级群500人
    37891947(二群) 超级群500人
    100844510(三群) 高级群200人
    32679922(四群) 超级群500人
    23413513(五群) 高级群200人
    32679955(六群) 超级群500人
    88585140(八群) 超级群500人
    128043302(九群 企业应用开发推荐群) 高级群200人
    101364438(十群) 超级群500人
    68435160(十一群 企业应用开发推荐群)超级群500人

    微博:http://www.weibo.com/edmonton

  • 相关阅读:
    思源:秒级体验百亿级数据量监控钻取
    禧云Redis跨机房双向同步实践
    谈谈数据中台技术体系
    RCA:收单设备调用云端接口频繁超时排查总结
    技术上的“深淘滩,低作堰”
    企业私有源代码上传github致入侵之大疆案判决了
    那些年我们一起犯过的错
    异地双活的四个误区
    没有预见性你凭什么晋升
    中国IT史上两大严重事故对我们的警醒及预防措施
  • 原文地址:https://www.cnblogs.com/jv9/p/2780796.html
Copyright © 2020-2023  润新知