Win8 WinRT将替换Win32 API程序员何去何从?
以下是主题演讲的摘要。当它们发布时,将提供更多细节。
概要
Windows 8: 基本内存使用从540MB降到281MB。
锁屏将显示用户内容.
触摸式密码,基本上是点击图像上的三个点给机器解锁。
类似Windows Phone,开机画面使用鲜活的瓦片状的Metro风格。
重点在全屏程序上。
应用程序特定的和系统设置在用户接口上共享相同的空间,这表明应用程序需要说明与哪些系统设置相关。
新版IE将焕然一新。所有的功能都隐藏在滑动的应用里。
拼写检查系统内置。
开发者预览版包括Visual Studio 11 Express和Expression Blend 5。在公开Beta的时间表里没有标明下一个里程碑是什么时候。内在更新在需要的时候将被推送到安装了预览版的机器上。可用于x86/x64的预览版本在今晚开始提供下载:http://dev.windows.com。
应用集成
Windows 8将提供被称为“挂件(charms)”的扩展点。一个例子是“共享挂件”,它展示了文本共享的所有方式,如电子邮件、Facebook、Twitter等。应用可以通过实现正确的接口,在挂件内部注册它们自己。同时其他应用程序可以表明它们能发送信息给这个挂件。这个概念非常像JavaScript的混搭或经典的OLE,但它更关注应用间的交互。
支持系统范围的搜索。而且应用可以注册为搜索服务提供者。
应用程序可以直接公开云端的文件,为其他应用程序使用。这样不需要拷贝文件(如图片)到本地硬盘,其他应用程序就可以访问它们。
为Windows 7开发:经典平台
· Internet Explorer上的HTML/JavaScript
· Win32上的C/C++
· NET上的C#/VB和Silverlight
为Windows 8开发: Metro风格
Windows内核仍然在最底层
WinRT是新的操作系统级别的API层。它是新的Windows本地API,而不是构建在Win32的上面。
你可以从C / C ++,C#/ VB或JavaScript访问WinRT。XAML是C、C++、C#和Visual Basic中的UI层。HTML/CSS将继续作为JavaScript的UI层使用。
Visual Studio提供Windows 8各种风格的应用程序的项目模板。第一个示例是一个基于JavaScript的应用程序。应用程序没有编译,而是打包其所需的所有的HTML和JavaScript文件。 Windows 8可以直接运行它,而不需要启动Web浏览器。
上文提到,JavaScript可以使用WinRT API访问本地功能。在主题演讲的演示中,只用了几行代码便显示了新的Windows打开文件对话框。由于Facebook已经安装在电脑上,打开文件对话框在演示者的Facebook页面上显示图片。 JavaScript应用程序并没有写任何网络代码,它和Facebook之间的这种联系完全由平台处理。
Expression Blend现在更多地支持HTML和CSS。
HTML5的网格方案对构建Windows8应用程序来说是必不可少的。如果没有它,要支持多种屏幕分辨率的Windows8上运行应用,将非常困难。
Metro风格的应用程序在不可见时自动挂起。这样做可以延长电池使用时间。
应用商店
正如预期的那样,现在有分发Windows应用程序的商店。应用程序许可的技术方面由商店本身处理,应用只是显示基本信息,如价格和是否有试用期。
提供Windows商店的应用程序需要认证。用来验证应用程序的工具将交给开发者,这样他们在正式提交申请前就可以看到和纠正违规现象。
访问Windows 8商店的应用使用JavaScript编写,使用了WinRT API。
应用商店不局限于Metro风格的应用,传统的Win32程序在商店里也可以见到。
从Silverlight升级到Windows 8
在演示中,所有现存的XAML都如从前一样工作。演示者仅需要改变命名空间(如System.Windows变为Windows.UI),并调整网络代码。只有十几行代码,就能够注册应用程序作为搜索服务提供商。
从Windows 8迁移到Windows Phone只需要额外添加一两行代码。
硬件支持
一个称为“连接待机(Connected Standby)”的新模式是受移动设备的启发。功耗非常低,偶尔启动为Windows临时打开网络连接,以允许应用程序接收更新。由于该系统是从来没有真正关闭,瞬间就恢复工作。
最大支持256TB的硬盘。Windows 7仅支持小于2TB的引导驱动器。
整个系统使用图形硬件加速。Metro风格的应用默认使用它,不需要额外编码。
Sensor Fusion API将结合陀螺仪、加速度计和磁强计的信息。获取基本信息,如设备的物理方向,仅需要三行代码。
现在网络协议栈支持如3G的边信道(side-channels)概念。
他们提供一台运行Win8和Visual Studio的Tablet作为赠品。
刷新(Refresh)和复位(Reset)
使用刷新命令,将删除除了个人信息/设置之外的一切。Metro风格的应用程序将被保留,任何Win32风格的应用程序将被删除。这基本上是用来响应系统问题,如病毒。
复位命令将彻底清理电脑。所有个人信息将被删除,机器返回到出厂设置,就跟刚买来时一样。
有一个命令行工具来更新基准镜像。可以用于添加应用程序到标准镜像,如Visual Studio或Office。企业用户很可能希望自己公司定制的软件包括在此基准图像中。
云服务
应用的设置、主题、密码等可以通过Windows Live账号在不同机器之间同步。
Windows通讯簿从所有来源,包括社交网站,得到所有的联系人,并通过Windows Live账号共享它们。用同样的方式可以共享日历。
所有Windows Live账号的用户都能使用Windows SkyDrive。
Windows Live允许在一台机器上访问另一台机器,即使另一台机器是在防火墙后面。关心信息安全的公司应该小心,因为这让没有技术技能的普通用户可以很方便地将机密文件从工作站移动到家里的电脑,即使不在一栋建筑物里。
微软希望开发者使用Windows Live将他们的应用连接起来。
分析:上面文章 你可以从C / C ++,C#/ VB或JavaScript访问WinRT 这句话意味着什么?如果这几种语言都能全部访问WinRT 话,性能几乎差不多的话,大家可以想象哪种开发语言在操作系统上开发周期更长,时间更久?程序员们都知道肯定是C 或者C++ ,也就是说 C,C++ 在WIN8操作系统应用程序的优势全没了。 也许说到这里 C ,C++程序员可能会说:"老子转嵌入式,微软太坑爹了。"。没错。。C C++ 在嵌入式市场是一下取代不了的。但有个小问题 一个做 windowsXP 游戏开发的 程序员 转 嵌入式 大家都知道 要学多少东东。淘汰一批C C++ 程序员 是必然的(这里的淘汰是行业上淘汰不是下岗,技术大牛们金字塔中上层的人一下是下不来的)。说到这里C#程序员偷偷笑了。。。终于可以在win8 下面 达到以前访问win32API 效果。C# 可以扬眉吐气。C#占有了更多的领域 基于 win8 的游戏编程。多年做C#的程序员苦恼于.NET性能 被C,C++鄙视不能做游戏开发。高呼一声:"不是我们不会。。。是没有几家公司用C#开发游戏。。。"。多媒体通讯行业是不是也要招聘更多的C# 程序员?XAML是C、C++、C#和Visual Basic中的UI层,这对于接触过silverlight或者WPF的程序员 so easy!难道C#程序员领域更广就意味着待遇会高吗?这个真不一定。。如果一批C,C++程序员转C#,C#菜鸟们可能也会在这次竞争中被踢出局。IT行业每隔10年一次洗牌。C#.NET已经有10年历史了。也该要洗牌了。无论C C++ VB C#程序员 都在对微软这种做法感到反感。"吗的,老子的程序好好的 你操作系统API 都换了,你在跑,我等着饿死吗?"。其实对软件工程来说:微软这样做是更易于操作系统软件的抽象,核心底层抽象封装。但win8操作系统能不能火?这是一个问号。。如果火了。IT真的要洗牌了。大浪淘沙。如果WIN8 像 vista 一样失败。这把牌还洗不了。本人只是觉得的微软这次操作系统升级动作是不是有点大了?难道是为了当年.NET没有彻底代替WIN32API,没达成的微软的.NET战略,用户抱怨性能不行而做出来的战略性的改变吗?我只想说:“走路的时候,步子不能迈的太大,会扯到蛋的”。
Win8 WinRT将替换Win32 API程序员何去何从?的更多相关文章
- C#调用win32 api程序实例
1.声明static extern 方法,使用DllImport特性 class MyClass { [DllImport("kernel32", SetLastError = t ...
- @Java web程序员,在保留现场,服务不重启的情况下,执行我们的调试代码(JSP 方式)
一.前言 类加载器实战系列的第六篇(悄悄跟你说,这篇比较水),前面5篇在这里: 实战分析Tomcat的类加载器结构(使用Eclipse MAT验证) 还是Tomcat,关于类加载器的趣味实验 了不得, ...
- 黑马程序员——【Java基础】——泛型、Utilities工具类、其他对象API
---------- android培训.java培训.期待与您交流! ---------- 一.泛型 (一)泛型概述 1.泛型:JDK1.5版本以后出现的新特性,用于解决安全问题,是一个类型安全机制 ...
- 计算机世界的道(C/ASM)生一(OS),一生二(API),二生万象(MFC/COM)——学包装技术的程序员将来会损失比较大,因为不了解本质,一旦包装过时就会被淘汰
道生一,一生二,二生万象.OO的思想就是抽象,万象归宗,化繁为简.99%的程序员使用OO,或者所谓的类库的目的就是好用,不必了解内部实现就可以直接达到所期望的结果.这时一种生产力的进步,一种流水线式半 ...
- 通过 WIN32 API 实现嵌入程序窗体
写了一个不使用 COM, 而是通过 WIN32 API 实现的示例, 它把写字板程序嵌在了自己的一个面板中. 这么做可能没有实际意义, 因为两个程序之前没有进行有价值的交互, 这里仅仅是为了演示这么做 ...
- windows程序员进阶系列:《软件调试》之Win32堆的调试支持
Win32堆的调试支持 为了帮助程序员及时发现堆中的问题,堆管理器提供了以下功能来辅助调试. 1:堆尾检查(Heap Tail Check) HTC,在堆尾添加额外的标记信息,用于检测堆块是否溢出. ...
- 《程序员的自我修养》读书笔记——系统调用、API
系统调用 程序运行的时候,本身是没有权限访问多少系统资源的.系统资源有限,如果操作系统不进行控制,那么各个程序难免会产生冲突.线程操作系统都将可能产生冲突的系统资源保护起来,阻止程序直接访问. ...
- C#通过WIN32 API实现嵌入程序窗体
本文实例讲述了C#通过WIN32 API实现嵌入程序窗体的方法,分享给大家供大家参考.具体如下: 这是一个不使用COM,而是通过WIN32 API实现的示例, 它把写字板程序嵌在了自己的一个面板中. ...
- 应用程序员眼中的数据库管理系统:API+数据库语言
应用程序员眼中的数据库管理系统:API+数据库语言 sqlite3_open_v2 https://www.cnblogs.com/cchust/p/5121559.html
随机推荐
- Python之路 day2 初识字典
#Author:ersa ''' key-value 键值对 字典是无序的,不需要下标,有key 字典的查找.修改.添加.判断.删除 ''' info = { 'stu1101': "Ten ...
- jQuery轮播
一,简单实现轮播 //轮播容器 .carousel //轮播容器--可设宽度 (carousel="轮播") //轮播指标 .carousel-indicators ...
- js输入,输出基本操作
- Windows Store App 关键帧动画
关键帧动画和插值动画类似,同样可以根据目标属性值的变化产生相应的动画效果,不同的是,插值动画是在两个属性值之间进行渐变,而关键帧动画打破了仅通过两个属性值控制动画的局限性,它可以在任意多个属性值之间进 ...
- Lua知识备忘录
最近对Lua很感兴趣,以下是本阶段学习的总结,包含三部分,一部分是基础语法,一部分是扩展和解释器嵌入,最后一部分是Lua小练习. 知识涉及:Lua语言编程基础:Lua&C++:Lua扩展.嵌入 ...
- Vmware workstation 10 NAT功能总是不正常的原因
原来运行一切正常的VMWARE WORKSTATION 10,突然出现NAT功能不能正常工作的情况. 表现是:如果将虚拟机的网卡设置为NAT模式,可以PING通网关及LAN内的主机,但是PING不通外 ...
- socket协议下如何缓存图片--推荐EGOCache
EGOCache是一个轻量级的缓存框架.用法简单方便,在现在的项目中,我就用到EGOCache来缓存下载过的照片和字符串. 有人可能会问到,缓存照片还需要用EGOCache吗?AFNetworking ...
- Ionic 2.0.0-rc.1 发布,HTML5 移动应用框架
Ionic 2.0.0-rc.1 发布了,Ionic Framework 是个高级的 HTML5 移动端应用框架,是个很漂亮的使用 HTML5 开发混合移动应用前端框架.本次更新内容如下: Bug 修 ...
- ACM 杂题,思路题 整理
UVa 11572 - Unique Snowflakes 问一个数组中,无重复数字的最长子串长度是多少. 用map维护某数字上次出现的位置.另外用变量last表示上次出现数字重复的位置. 如果出现重 ...
- C语言修炼-第2天
从昨天被打击到下定决心以来,还是觉得学习代码是能让自己真正觉得充实的事情.其实潜意识里一直是这样的不是吗?从开始选择工科就没有后悔过,更不应该现在就放弃,其实自己的缺点本来就是不够扎实,给自己150天 ...