作者haryewkun (Har)
看板Programming
标题Re: [讨论] 从程式设计的角度,Vista和 XP的差别?
时间Sun Jun 3 04:29:04 2007
※ 引述《leicheong (睡魔)》之铭言:
: 驱动程式的话最好依照KDMF/UDMF架构写, 这样在以後的新OS推出时
: 有很大机会就不用重写了.
: 显示咭的话需要依照WDDM规格, 否则应该拿不到微软的Vista Logo吧?
: 系统服务类的必须把service code和UI code分开执行, 然後用各种
: IPC方式连接, 因为Vista的服务预设是不可在User Session中执行.
: 一般程式类的, 有manifest, theme, WPF等一堆的... 不过都不是
: 必须留意. 你高兴的话照平常的做法也可以.
: 不过因为UAC的关系, 有些东西还是注意不要做的好... 例如预设
: "Program Files"目录在使用者没有consent下不可写入, 因此为免
: 使用者被烦到, application setting请写入"Application Settings"
: 目录或registry...... 这list还有许多, 总之要避免使用会触发
: UAC popup的功能.
: 这问题分两面, Vista的确会让程式执行更稳定 (归功於更好的记忆体
: 存取管理) 但Vista的一些保安设定却会让debug更麻烦. (因此
: 微软为Vista的Visual Studio 2005的用户特别制作的patch记得
: 装上)
我尝试说说我的看法,因为我之前没有一直追踪 Vista的开发过程,所以现
在的资料是来自网上,有一定程度的 LAG及猜测成分。只是为了研讨而分享
,请各位牛人多多包涵及加以更正。
我觉得,在编程上,Vista 做了最重大的事情,是革掉了延用十年的 Win32
API的命,而代以 WinFX。
Win32 API包含的范围极广,无论是字处理、电子邮件、即时通讯软件、杀
毒以至 ERP系统,可以说任何应用软件,都必然会和它打交道。
所以当 Vista以新的 API取而代之时,它必然也引入了近代的编程架构及理
念。它的影响,就好比从 DOS应用,到Windows应用。又或者好似从 C语言
,进化到包含了大量虚拟code理念的 .NET平台及 Java平台。
这能够解释为什麽 Vista的兼容性问题如此严重。Win95、2000、XP都是建
立于 Win32 API之上,而 Vista却是建立在 WinFX API上。
DOS时代:DOS 5, DOS 6.2
Win3.1 :和 DOS时代 并存
Win32 :Win95、98、2000、ME、XP
WinFX :Vista、以後的版本
也就是说,Vista 只是一个开始。它肩负了微软未来十年的软件开发平台的
使命。它同时也将会是未来十年内最普遍的程式执行平台。(除非Linux取
而代之……)
这同时也能够解释,为什麽现在对 Vista程式的改动,大多关注在画面及界
面上的差异。因为 API的改动,最快看到结果的,就是应用新的界面 API。
其他 WinFX API的用途,无论业界或者微软本身,恐怕都需要相当长的时间
探索。要先有软件厂商挖掘出 API的潜力,做出上一代 API做不到的事情,
再回馈到 Visual Studio这些开发平台,Vista-only 才会慢慢普遍化。
我认为,现在对 Vista最致命的东西,是软件开发逐渐不再是厂商的主力。
现在每个人都 go for internet(我自己也是走网站应用开发,请多指教)
,适合做在网上的应用,谁愿意做成软件版本?
所以我认为 Vista最大的竞争对手,很可能不是 Linux,而是 Google这一
类把应用以网站方式呈现出来的网络公司。两者的竞争,将发生于对开发
人员的争夺上。
如果大家都往网络开发网站,应用程式的需求量就会减退,导致没有足够的
业者,投入资源去挖掘 WinFX API的潜力。毕竟没有必要放着好好的 XP 不
用,而要为自己找麻烦。这样 Vista系列就会失败。
本文只是为了探讨而分享,我前面已经说了,我的资料大多是 LAG的,加上
隔行如隔山。不正确的地方,请各位牛人多多包涵了。
--
+-----------------------------------------------------------------+
| 夏之星系 - 个人日志,提供佛学命理、小说漫画、娱乐、技术等内容。 |
| (
http://xia4.org) |
+-----------------------------------------------------------------+
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.111.184.198
1F:推 ephesians:牛人是对岸的用词,意思是强者,高手218.160.212.251 06/03 10:45
2F:→ ephesians:但是我们的强者又是另一种意思218.160.212.251 06/03 10:46
3F:→ ccbruce:写程式当然是写POSIX才是王道125.229.140.226 06/03 13:06