XP之后Windows的一些变化

来源:百度文库 编辑:超级军网 时间:2024/04/18 22:23:58
原文地址:http://www.cnblogs.com/weiym/p/3197191.html
看到很多Windows开发人员,尤其是C++程序员思维还是停留在XP操作系统,当然根据工作是否需要新知识 ,这本身没有错。但是实际上Vista之后的Win7, 再之后的Win8 ,Windows已经发生了很大的变化,我们程序员也该了解和适应这些变化。

先看看Windows的发展历史:

从上面的图,我们可以看到大概时间点:
Win 95: 1995
Win 98: 1998

Win 2000: 2000
Win XP: 2002

Vista: 2007
Win 7: 2009

Win 8: 2012
Win 8.1 (Windows Blue): 2013 ?

从上面的图我们可以看到,Windows每次大的改动后通常都会有2个版本 ,而后一个版本通常会取得巨大成功,Win98, WinXP, Win7的成功已经证明这一“规律”,如果不出意外,Win8.1应该也会成功

我们也可以看到XP作为Windows历史上最成功的操作系统,在近10年里一直占有统治地位, 现在仍有挺大的用户量。但是随着Win7的成功,XP的用户量正在逐步下降, 新的电脑现在一般都自带Win7或是Win8系统,我们的应用程序也该适应新的系统。当然, 微软一直在系统的兼容性方面做得很好 ,我们的应用程序一般不用改动就可以直接运行在新的系统上, 但是如果要使我们的程序在新的系统上更有竞争力 ,我们的程序就该充分利用新系统的一些特性。
下面我们简单列举一下Vista(Win7 )相对于XP,对开发人员的一些变化:
Direct2D: 微软下一代替代GDI/GDI+的2D渲染API, 充分利用了GPU硬件加速。
DirectWrite: 独立于分辨率的矢量字, 高质量的文本显示和布局接口。
Windows Animation Manager: 高效强大的动画管理接口。
Windows Imaging Component: 强大的图像编解码器接口, 支持各种图像格式。
Windows Touch Gestures: 支持多点触摸应用程序的开发接口。
User Interface Privilege Isolation: UAC(user access control)打开后,每个应用程序都有权限等级, 一般程序都运行在低权限,低权限程序不能控制或是发消息给高权限程序。
Session 0 Isolation:XP时代服务程序和一般普通应用程序都运行在Session 0 中, Vista之后只有服务程序运行在Session 0, 第一个登陆用户运行在Session 1。
Data Redirection : UAC打开时有些目录不让写入数据,会导致写入失败或是重定向到其他路径。
Installer Detection:UAC打开后某些应用程序可以通过manifest配置信息要求高权限运行, 运行时会有验证窗口。
Ribbon:新一代office的界面风格, 主要是去掉菜单, 为支持触摸做准备。
Windows Gadget Platform:桌面上的那些小玩意。
Desktop Window Manager(DWM): 在 Aero模式下的标题栏半透明效果, 后台用了全新的渲染合成接口。
Magnification: 开发 自己 的放大镜程序接口 。
Virtual Disk Service: 创建自己的虚拟硬盘接口。
Taskbar: 创建Win7 风格的任务栏图标

我们可以看到Win7相对于XP的主要进步在于界面炫和安全性, 这2者对操作系统来说都是很重要的。

上面主要考虑的是操作系统的特性, 如果再加上 .Net 的变化, C#, F#, WPF(WindowsPresentationFoundation), WCF (Windows Communication Foundation), WWF(Windows Workflow Foundation)等, 变化就更多了。

而Win8相对于Win7的变化主要是增加了Metro模式, 该模式下的程序都要经过Windows Strore验证, 这些程序本身都运行在低权限的沙箱里, 原理可以参考我以前写的《理解WinRT》, 关于WinRT的更多知识可以参考Windows API reference for Windows Store apps。

尽管Win8刚出来时很多用户不买Metro模式的帐, 觉得 它是一个怪胎,但是新生事物总有一个被接受的过程, 我们也可以看到微软应该不会放弃它。因为ARM版的Win8, 传统Desktop模式下都没有开放开发接口, 也就是说我们在Arm版的Win8 下只能开发Windows Store App。当然X86下的Desktop因为这么多历史软件的原因,应该会长期存在, 但是如果你要开发同时支持X86和Arm的程序, 你只能用Windows Store App。所以我们可以看到WinRT其实是一个很重要的东西, 它统一了PC,Tablet和Phone,是微软下一代面向对象的开发接口, 甚至WinRT同时支持HTML开发, 它还统一了Native和Web。

另外,如果关注MSDN杂志, 我们会发现, 上面.Net相关的文章出现的越来越少, 而Phone和AZURE字眼的文章出现的越来越多, 这其实也说明了为微软的战略已经从.Net转移到了移动和云服务。实际上从2010年开始,微软就开始推广他们的云服务平台Windows Azure。我们可以试想一下我们以后的程序(实际上很多已经这么做了), 客户端前台基于WinRT, 直接跨各种类型的用户终端, 而后台调用Windows Azure提供的云服务。

很多人说跟着微软跑真累,确实如此。 但是回头来想想, 那是因为你一直落后, 你一直在追赶, 你一直是被赶着走的, 所以你会觉得累。如果你一直是与微软起头并进, 甚至领先与微软(微软新加的东西是你意料到的), 你就不会有累的感觉,有新东西出来, 研究下原理, 写些测试代码,就大概知道怎么回事了。

记得有本书上说过(好像是<<代码大全>>),程序开发人员的知识每隔3年, 就有一半被淘汰。 可能有些夸张, 但是从Xp到Win7 到Win8, 已经过了10多年,隔了2代了, 是时候更新下自己 的知识了。当然, 有些新知识可能只是壳,也有些新知识却是质, 把握本质和原理的东西永远是最重要的。原文地址:http://www.cnblogs.com/weiym/p/3197191.html
看到很多Windows开发人员,尤其是C++程序员思维还是停留在XP操作系统,当然根据工作是否需要新知识 ,这本身没有错。但是实际上Vista之后的Win7, 再之后的Win8 ,Windows已经发生了很大的变化,我们程序员也该了解和适应这些变化。

先看看Windows的发展历史:

1.jpg (145.99 KB, 下载次数: 0)

下载附件 保存到相册

2013-7-29 10:37 上传


从上面的图,我们可以看到大概时间点:
Win 95: 1995
Win 98: 1998

Win 2000: 2000
Win XP: 2002

Vista: 2007
Win 7: 2009

Win 8: 2012
Win 8.1 (Windows Blue): 2013 ?

从上面的图我们可以看到,Windows每次大的改动后通常都会有2个版本 ,而后一个版本通常会取得巨大成功,Win98, WinXP, Win7的成功已经证明这一“规律”,如果不出意外,Win8.1应该也会成功

我们也可以看到XP作为Windows历史上最成功的操作系统,在近10年里一直占有统治地位, 现在仍有挺大的用户量。但是随着Win7的成功,XP的用户量正在逐步下降, 新的电脑现在一般都自带Win7或是Win8系统,我们的应用程序也该适应新的系统。当然, 微软一直在系统的兼容性方面做得很好 ,我们的应用程序一般不用改动就可以直接运行在新的系统上, 但是如果要使我们的程序在新的系统上更有竞争力 ,我们的程序就该充分利用新系统的一些特性。
下面我们简单列举一下Vista(Win7 )相对于XP,对开发人员的一些变化:
Direct2D: 微软下一代替代GDI/GDI+的2D渲染API, 充分利用了GPU硬件加速。
DirectWrite: 独立于分辨率的矢量字, 高质量的文本显示和布局接口。
Windows Animation Manager: 高效强大的动画管理接口。
Windows Imaging Component: 强大的图像编解码器接口, 支持各种图像格式。
Windows Touch Gestures: 支持多点触摸应用程序的开发接口。
User Interface Privilege Isolation: UAC(user access control)打开后,每个应用程序都有权限等级, 一般程序都运行在低权限,低权限程序不能控制或是发消息给高权限程序。
Session 0 Isolation:XP时代服务程序和一般普通应用程序都运行在Session 0 中, Vista之后只有服务程序运行在Session 0, 第一个登陆用户运行在Session 1。
Data Redirection : UAC打开时有些目录不让写入数据,会导致写入失败或是重定向到其他路径。
Installer Detection:UAC打开后某些应用程序可以通过manifest配置信息要求高权限运行, 运行时会有验证窗口。
Ribbon:新一代office的界面风格, 主要是去掉菜单, 为支持触摸做准备。
Windows Gadget Platform:桌面上的那些小玩意。
Desktop Window Manager(DWM): 在 Aero模式下的标题栏半透明效果, 后台用了全新的渲染合成接口。
Magnification: 开发 自己 的放大镜程序接口 。
Virtual Disk Service: 创建自己的虚拟硬盘接口。
Taskbar: 创建Win7 风格的任务栏图标

我们可以看到Win7相对于XP的主要进步在于界面炫和安全性, 这2者对操作系统来说都是很重要的。

上面主要考虑的是操作系统的特性, 如果再加上 .Net 的变化, C#, F#, WPF(WindowsPresentationFoundation), WCF (Windows Communication Foundation), WWF(Windows Workflow Foundation)等, 变化就更多了。

而Win8相对于Win7的变化主要是增加了Metro模式, 该模式下的程序都要经过Windows Strore验证, 这些程序本身都运行在低权限的沙箱里, 原理可以参考我以前写的《理解WinRT》, 关于WinRT的更多知识可以参考Windows API reference for Windows Store apps。

尽管Win8刚出来时很多用户不买Metro模式的帐, 觉得 它是一个怪胎,但是新生事物总有一个被接受的过程, 我们也可以看到微软应该不会放弃它。因为ARM版的Win8, 传统Desktop模式下都没有开放开发接口, 也就是说我们在Arm版的Win8 下只能开发Windows Store App。当然X86下的Desktop因为这么多历史软件的原因,应该会长期存在, 但是如果你要开发同时支持X86和Arm的程序, 你只能用Windows Store App。所以我们可以看到WinRT其实是一个很重要的东西, 它统一了PC,Tablet和Phone,是微软下一代面向对象的开发接口, 甚至WinRT同时支持HTML开发, 它还统一了Native和Web。

另外,如果关注MSDN杂志, 我们会发现, 上面.Net相关的文章出现的越来越少, 而Phone和AZURE字眼的文章出现的越来越多, 这其实也说明了为微软的战略已经从.Net转移到了移动和云服务。实际上从2010年开始,微软就开始推广他们的云服务平台Windows Azure。我们可以试想一下我们以后的程序(实际上很多已经这么做了), 客户端前台基于WinRT, 直接跨各种类型的用户终端, 而后台调用Windows Azure提供的云服务。

很多人说跟着微软跑真累,确实如此。 但是回头来想想, 那是因为你一直落后, 你一直在追赶, 你一直是被赶着走的, 所以你会觉得累。如果你一直是与微软起头并进, 甚至领先与微软(微软新加的东西是你意料到的), 你就不会有累的感觉,有新东西出来, 研究下原理, 写些测试代码,就大概知道怎么回事了。

记得有本书上说过(好像是<<代码大全>>),程序开发人员的知识每隔3年, 就有一半被淘汰。 可能有些夸张, 但是从Xp到Win7 到Win8, 已经过了10多年,隔了2代了, 是时候更新下自己 的知识了。当然, 有些新知识可能只是壳,也有些新知识却是质, 把握本质和原理的东西永远是最重要的。
码农不好当,早就认识到了,所以至今对程序员非常敬佩
"如果不出意外······"這和沒說有什麼區別
想起了一句话:以不变应万变不过针对的不是程序员
win他妈的蛋疼,大厂商Linux一般只有服务器和桌面版,搞这么多版本干啥呢?
xp的使用惯性很大,7现在还有不适应的
而且工作上的软件有很多只能在xp上运行
deepinpo 发表于 2013-7-29 19:50
win他妈的蛋疼,大厂商Linux一般只有服务器和桌面版,搞这么多版本干啥呢?
其实同一厂商服务器版和桌面版的区别都不是很大,主要区别在于安装的软件包。还有就是桌面版一般比较激进,服务器版比较保守一些。
llinux server版本更注重内核参数比如io的调优 . desktop更重注用户体验内置一些常用软件显得臃肿
还是习惯xp,w7还在习惯中
用了一段时间win7,xp都不会用了。
用了俩月8,换回7了
8太坑爹,不适合我
求推荐win7用哪个版本稳定,前几天装了个win7,但装不上打印机,就放弃了。
胶卷007 发表于 2013-7-30 14:00
求推荐win7用哪个版本稳定,前几天装了个win7,但装不上打印机,就放弃了。
稳定性差不多,不加入域家庭高级版足够,专业版、旗舰版对一般用户都是功能浪费的。
windows?用linux工作是码农最基础的能力,不会这个连码农的资格都没有
用了两年win7,还是不习惯
壮东风 发表于 2013-7-30 14:58
稳定性差不多,不加入域家庭高级版足够,专业版、旗舰版对一般用户都是功能浪费的。
唉,工控屌丝表示只能用旗舰版,不然好多软件装不上去,西门子不知道那里中邪了,跟着微软学,把软件做的巨大无比唉。。。
瞧人间的施耐德的软件...
deepinpo 发表于 2013-7-30 19:58
唉,工控屌丝表示只能用旗舰版,不然好多软件装不上去,西门子不知道那里中邪了,跟着微软学,把软件做的 ...
那看来是用到了一些企业应用特性了。
如果不把楼主的帖子顶上去,就是对真理的一种背叛
大家不要光看不顶
嗯,虽然是转的,但确实很不错。支持一下
我还是在用XP
windows?用linux工作是码农最基础的能力,不会这个连码农的资格都没有
我的WIN7系统上用Virtualbox的Fedora虚拟机。
windows?用linux工作是码农最基础的能力,不会这个连码农的资格都没有
比如开发网游的码农
emu350 发表于 2013-8-15 23:26
比如开发网游的码农
那种只能算码奴了……
windrarara 发表于 2013-8-15 23:43
那种只能算码奴了……
又比如微软开发windows、office的各种码奴。