IE和微软

IE的确是Windows的一部分,捆绑不能算垄断。因为IE的核心是mshtml.dll,而mshtml.dll非常严重的集成在了Windows GUI Shell的各个方面。Win98开始,资源管理器左边那一块就可以直接由folder.htt(htt全称HTML Template,实质就是HTML)定义

mshtml.dll提供了众多接口,例如非常著名的IHTMLDocument2nternetExplorer.Application,这些东西在Win32平台上是极度被广泛的使用。就像现在的现在被用滥了的webkit一样。Win XP控制面板里“添加删除程序”也是HTML+JS写的,绝大多数Windows帮助文件是基于hh.exe,也就是HTML Help的,GTalk的自定义外观是通过HTML+CSS实现的。要在Windows里去除IE,非常不现实。假设是根除,也就是删除了mshtml.dll,那么大多数Win32程序就废品了,普通用户连Firefox如何去下载可能都束手无策。(在只装有Windows的机器上几乎唯一的办法是通过ftp.exe命令行。)

但是更加重要的一点,是HTML在Office里的应用。Office是微软最赚钱的产品之一,但是Office的Word, Powerpoint都是基于MSHTML的。例如Office里通用的矢量绘图,就是基于mshtml的VML引擎。VML还是多强大的。这里有一个256字节javascript调用vml例子。Word/PPT里比较高级的语法,例如宏,域等等概念,最终都可以追溯到Microsoft Script Editor里HTML的变化。

现在说说IE。IE的本质,不是用来上网的,而是用来查看一个html文件的。IE5如此,IE6也如此。Firefox做的,并没有太多的创新,而是遍地的marketing。Firefox实现的东西,从MyIE到GoSuRF早就实现了。现在的小白都喜欢吹嘘extension和plugin的区别,我的看法就是有个毛的区别啊,被的深度不同而已。IE7受到FF的压力,做了个标签页浏览,其他的还是很烂。IE8受到Chrome的压力,改进了JScript.dll,但是速度依然不行。而且IE里的一些内存泄漏例如Circular Memory leaks居然还是COM+的架构问题引起的。

所以IE不仅仅是浏览器那么简单,IE可以说牵扯到微软两大核心产品Windows和Office的经脉。任何IE的进步都是牵一发动全身的事情,没有那么简单的。

那么微软那么牛那么大的帝国,真的连一个IE都做不好吗?我觉得这一切都是微软自己的战略失误。浏览器从来都不是微软关心的盈利重点。除非市场强迫微软这么做。

其实有的时候抛开一切来思考一下,现代OS、浏览器、Office真的应该改进一下了。OS不再应该是对冯·诺伊曼模型的浅包装,Office应该更加注重工作流和业务智能,浏览器应该是完全面向应用的容器式设计。微软这10年进步很少,所谓What Andy gives, Bill takes away么。呵呵 。微软给了竞争对手和开源世界整整10年的机会,可惜是谁也没有作出有革命性的东西出来。OOo到现在还在抄袭Office,GNOME/KDE仍然没有跳出模仿OS X/Windows GUI的框框,谁也没有威胁谁,谁也没有创新。甚至我觉得这10年真正对信息载体/工具有革命性的变化的东西之一是——GIT

Comments