windows 8 开发之开发平台与开发框架的应用
2013-04-25 10:08
435 查看
windows 8 开发之开发平台与开发框架的应用
win8 App开发主要分成两部分,desktop app和metro app。右边蓝色的部分就是desktop app的部分,也是从win7延续过来没有发生变动的部分,前段在论坛上经常看到有人说在win8中不再支持MFC,ATL等,这些绝对是谣言,以前桌面开发支持的,win8桌面程序也都支持,所以搞MFC,Com,ATL等开发的不用觉得是世界末日,地球还是绕着太阳转着呢。 重点是绿色的部分,Metro风格App的开发平台,这是win8中全新的架构,让我们一层层来看吧。 底层是windows内核,往上是windows Runtime层,你可以把WinRT理解为升级版的Windows API,比如它提供了更易使用的Metro UI的API,比如异步编程的全面支持,比如对多种开发语言交互的支持等等,可以说是微软继.Net之后的又一重要框架。它是由C++实现的,所以性能应该会有优势。 从WinRT上方的几部分可以看出,win8支持3种方式开发Metro App,第一种是Html+CSS+JS,第二种是XAML+C++,第三种是XAML+C#.Net或VB.Net。对Javascript的支持,绝对是Web前端开发者的福音,至少UI这部分的开发几乎是无缝就能上手的,JS也终于走出浏览器这个沙盒,开始支持开发native app了,从Win8也对JS提供支持可以看出目前JS有多火,曾经小看或轻视这门语言的人该醒醒了。而C++开发者也可以走第二条路,而且从XAML设计UI和WinRT提供的UI接口来看,易用性和扩展性绝对要比桌面时代C/C++开发UI要强很多。第三种.Net的开发方式,让原来.Net的开发者也可以无缝过渡到Win8的Metro App开发上。所以,不管是Web开发者,C++开发者,还是.Net开发者进军Win8 Metro App开发的路都是走的通的。从技术上来看,虽然支持三种开发形式,但最后其实还是映射到WinRT这个沙盒中,所以性能都不会差。 也许还有人会问,那原来的Win32 API和Com API跟Metro App开发中就完全无关了吗?其实不然。因为有了WinRT API了,可以说大部分Win32和Com的API确实对Metro App开发不再有用,但是仍旧有一小部分API在WinRT中是没有被Cover到的,而这些应用仍旧是可以被使用的。据说在SDK代码头文件或者MSDN新的说明文档中都会指明各个API可以应用的范围(桌面或Metro或两者都支持)。其实.Net也是类似的,原来.Net Framework中的也是只有一部分API仍旧保留作为Metro App开发的API,只是.Net的这部分应该比Win32和Com中保留在Metro开发中能使用的要多的多了。
win8 App开发主要分成两部分,desktop app和metro app。右边蓝色的部分就是desktop app的部分,也是从win7延续过来没有发生变动的部分,前段在论坛上经常看到有人说在win8中不再支持MFC,ATL等,这些绝对是谣言,以前桌面开发支持的,win8桌面程序也都支持,所以搞MFC,Com,ATL等开发的不用觉得是世界末日,地球还是绕着太阳转着呢。 重点是绿色的部分,Metro风格App的开发平台,这是win8中全新的架构,让我们一层层来看吧。 底层是windows内核,往上是windows Runtime层,你可以把WinRT理解为升级版的Windows API,比如它提供了更易使用的Metro UI的API,比如异步编程的全面支持,比如对多种开发语言交互的支持等等,可以说是微软继.Net之后的又一重要框架。它是由C++实现的,所以性能应该会有优势。 从WinRT上方的几部分可以看出,win8支持3种方式开发Metro App,第一种是Html+CSS+JS,第二种是XAML+C++,第三种是XAML+C#.Net或VB.Net。对Javascript的支持,绝对是Web前端开发者的福音,至少UI这部分的开发几乎是无缝就能上手的,JS也终于走出浏览器这个沙盒,开始支持开发native app了,从Win8也对JS提供支持可以看出目前JS有多火,曾经小看或轻视这门语言的人该醒醒了。而C++开发者也可以走第二条路,而且从XAML设计UI和WinRT提供的UI接口来看,易用性和扩展性绝对要比桌面时代C/C++开发UI要强很多。第三种.Net的开发方式,让原来.Net的开发者也可以无缝过渡到Win8的Metro App开发上。所以,不管是Web开发者,C++开发者,还是.Net开发者进军Win8 Metro App开发的路都是走的通的。从技术上来看,虽然支持三种开发形式,但最后其实还是映射到WinRT这个沙盒中,所以性能都不会差。 也许还有人会问,那原来的Win32 API和Com API跟Metro App开发中就完全无关了吗?其实不然。因为有了WinRT API了,可以说大部分Win32和Com的API确实对Metro App开发不再有用,但是仍旧有一小部分API在WinRT中是没有被Cover到的,而这些应用仍旧是可以被使用的。据说在SDK代码头文件或者MSDN新的说明文档中都会指明各个API可以应用的范围(桌面或Metro或两者都支持)。其实.Net也是类似的,原来.Net Framework中的也是只有一部分API仍旧保留作为Metro App开发的API,只是.Net的这部分应该比Win32和Com中保留在Metro开发中能使用的要多的多了。
相关文章推荐
- Windows平台下安装Eclipse插件,开发Hadoop应用
- VMware整合Java开发框架 推云计算应用平台
- 实战揭秘:开发.Net平台应用系统框架
- 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建
- Windows 8 Directx开发学习笔记(一)应用基本框架
- Silverlight企业应用快速开发平台框架设计(二)分析-平台实现重点是什么,要怎么做?
- Silverlight企业应用快速开发平台框架设计(三)分析-页面模型
- HTML5移动端跨平台应用开发框架解析
- Windows平台下安装Eclipse插件,开发Hadoop应用
- 图解框架-跨平台应用开发方案
- 关于Qt开发的windows平台的应用发布的方法
- 创采应用框架开发平台--CFrame
- Windows平台下安装Eclipse插件,开发Hadoop应用
- CYQ.Data 数据框架 跨平台应用开发
- 开发.Net平台应用系统框架
- Windows下使用Cordova跨平台框架开发的成功的第一个android项目
- 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建
- 谈基于.net平台windows开发中的模式窗体及其确定、取消、应用按钮
- Java在建模和工具上的整合和统一是否可以在成本上超越windows平台下的应用开发?
- 实战揭秘:开发.Net平台应用系统框架 作者:孙亚民 本文选自:赛迪网