现代GUI启示录-IBM,Microsoft为什么构造那些华丽绝伦的GUI桌面程序

MFCPlus 版主 2005-10-28 08:18:08
大约半年前,我结识了一位Eclipse高手,那是我第一次实际接触Eclipse,那次接触给我留下深刻印象的是那位朋友提起Eclipse时的眼神,我能够体会到那种发自内心的感受,就如同我第一次接触到Visual Studio的感受一样。从Visual Studio 2002开始,现代风格的GUI界面逐渐成了今天的时尚,曾几何时,我们曾经为了Visual Studio 风格的界面如醉如痴,也曾经为Office风格的华丽叹为观止,当我真切的看到源自IBM的Eclipse的时候,我仿佛回到了佳丽云集的仙境,这些靓丽的尤物就像一首首充满魔力的仙乐,令众多程序员无法抗拒……
曾经有很长一段时间,我一直把自己关在家里工作,很少了解外面的事情,有一天,我来到离家仅一道之隔的中关村广场,我被眼前的变化惊呆了,与十几年前相比,差不多是沧桑巨变,那么多的高楼仿佛是一夜间起来的,看上去十分华丽、壮观、气派,走在这些高大建筑的底下,你会感到个人是很渺小的,看到工地里的民工,感触良多,他们真的没有接受过高级、良好的教育,但高楼大厦、华丽的楼堂馆所却从他们的双手中拔地而起。当我们把玩Microsoft、IBM等公司的软件时,我们仿佛走到另一类高大建筑的底下,这些软件的华丽绝伦,完全可以与那些美轮美奂的广厦有一比。由此我联想到造就这些广厦的民工,与他们相比,我们也是民工吗?我们不是民工,也许,我们还不如那些民工,我们知道,只要按照标准的建筑流程施工,民工就可以将图纸变为现实,然而在许多时候,我们面对美好的软件创意却显得无能为力,尽管现代的编程工具已经发展十几年了。再过几天,Visual Studio 2005就要面世了,也许,我们又要面对一个新的华丽面孔,这些新的面孔造就了许多模仿秀,尽管这些模仿秀的功力很深,但却有一个较高的门槛,使得我们不得不望而却步,大公司的策略,就是他们打造华丽的美景,然后让你流连忘返,永远的追随他们的步调。Microsoft完全有能力让普通程序员拥有构造华丽界面的能力,也许是出于自身利益的考虑,才使得那些看上去华丽无比的工具仅仅能够开发出相貌平平的软件……
当我们站在一边看民工干活时,我们发现绝大多数时候,他们的工作都十分单调、简单,相比之下我们这些在安静的环境下Coding的白领们却时时面对挑战,只要他想使得他的工作与众不同。为什么软件开发过程与楼体建筑过程不具备可比性?也许答案是软件开发的策略与Coding过程是紧密耦合的,而建筑业的图纸体现了建筑的策略与规范,有了“图纸”,具有一定资质的建筑队就可以顺利的按图纸施工,这种松耦合的分离机制在软件界还没有得以形成。让我们仔细的看看Eclipse、看看Visual Studio IDE,我们发现,剥去华丽的装饰物,从逻辑上看,其GUI架构基本上就是一系列分隔窗口、多页窗口(即Tabbed窗口)的复合物,这些东西,就好像是一种可灵活拆分的框架,谈到类似的框架,熟悉MFC的人一定有深刻的印象,MFC类库中提供了CSplitterWnd、CPropertyPage、CTabCtrl等对象处理这类框架,MFC是个成功的类库,与其同时代的许多商业类库都悄悄地消失了,至今MFC还存在于VisualC++之中,尽管MFC的名声越来越不好,然而,在未来的几个版本的Visual Studio中,MFC依然是不可或缺的一部分。MFC为Microsoft立下了汗马功劳,这个类库成功的将大多数开发者锁定在紧耦合的编程思维之中,.NET框架也是建立在一个越来越庞大的类库基础之上,虽然.NET FrameWork不同于MFC,然而隐约之中我们却看到了MFC的痕迹(尽管不是很明显),.NET类库同样会将开发者纳入Microsoft规定的步调,同理,IBM极力推崇Eclipse,也是受Microsoft启发而力图将开发者纳入IBM的步调。一旦我们的思维被纳入他们的步调,无论他们谁战胜谁,我们也许都是失败者,胜利者是美国佬,想一想这有多可怕!我曾经多次与Microsoft、IBM、Novell等公司的人实际接触,遗憾的是接触的都是中国人,为什么遗憾呢?因为他们都是精英,一口流利的英语夹杂着少许的京味汉语口音,就其个人而言,这些人没有错,Microsoft、IBM、Novell们就其自身利益角度上看也没有错,只是中国正在流失一些东西,我们的许多优秀软件被他们不知不觉中扼杀了,如果你进入过Microsoft中国所在的西格玛,你会深刻的感受这一切,感受到中国人的朝气在Microsoft企业文化中焕发的强烈震撼!
寻找自己的路子,是许多中国人的梦想,由此许多国人走到Linux领域,Linux世界没有Microsoft,却有Red Hat、Novell、IBM,同样困难重重。历经十几年的演化后,软件界的重头大戏即将回到新一轮的桌面开发竞争,IBM转让PC业务而将重点转向软件业务也许就是预示着这一点,同样,Microsoft也在为新一轮的软件大战紧锣密鼓的准备着,Microsoft的Office System变得越来越丰富,经过9年的努力,即将出台的新一代Office与Microsoft Visual Studio .NET关系将变得十分微妙(Office 将在内部集成Visual Studio .NET的一个子集,即Visual Studio Tools for Application以替代9年历史的VBA),我们不知道,IBM的Eclipse与Microsoft的Visual Studio之间的竞争是不是可以类比为一场“日俄”战争,如果是,无论谁是赢家,我们都是输家。当我们接受了洋枪、洋炮后,经过浴血奋战,我们告别了冷兵器时代,于是世界上有了我们的位置,今天的软件界,我们会不会重演这一幕,我们拭目以待。毋庸置疑,今天的软件界对国人来说充满了“洋味”,以至于谈起编写程序代码都要称为“Coding”,当我们走在北京的大街上,我们随处可见分布在高楼大厦四周的矮小楼房,我们感到明显的差距,软件界同样明显的存在这种差距,如果说城市建筑的高、矮差距;华丽与平庸的差距取决于经济实力,那么软件的差距则取决于积累、头脑。如果将软件的十年比作凡间的百年,我们与那些巨头的差距不知要差上多少年。
让我们看一个典型的GUI界面:(以下连接到http://blog.csdn.net/sunhui/archive/2005/10/28/518203.aspx)
...全文
117 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
CUG122032 2006-01-03
好文。
赞。
  • 打赏
  • 举报
回复
wwxxll 2005-10-28
原来离楼主挺近,我也在中关村广场旁,广场建的不错
  • 打赏
  • 举报
回复
vcmute 2005-10-28
继续聆听
  • 打赏
  • 举报
回复
相关推荐
发帖
VC/MFC

1.6w+

社区成员

VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
帖子事件
创建了帖子
2005-10-28 08:18
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……