ITnews 版 (精华区)

发信人: JJason (酱牛肉~~想家了:(), 信区: ITnews
标  题: 新任Visual C++架构师Stanley Lippman访谈(转载)
发信站: 哈工大紫丁香 (2002年12月23日10:38:18 星期一), 站内信件

【 以下文字转载自 Programming 讨论区 】
【 原文由 JJason 所发表 】
标题     微软新任Visual C++设计师Stanley Lippman访谈    optimizer(翻译)
关键字     Visual C++
出处     http://www.codeproject.com/interview/stanlippman14nov2001.asp

微软新任Visual C++架构师Stanley Lippman访谈

Chris Maunder 著  荣耀 译

Stanley Lippman 在C++语言方面和C++社团里有很长的历史背景了。他是C++最早的使用
者和实现者之一,曾是Bjarne Stroustrup领导的贝尔实验室基础项目组的一员,做过W
alt Disney特色动画公司首席软件工程师,并撰写了象《C++ Primer》这样的大量脍炙
人口的专著。

Stanley 最近加入微软,出任Visual C++架构师,我抓住时机做了个随访,以了解他眼
中的Visual C++的过去、现在和将来以及他对Visual C++的个人目标。首先也是最重要
的是,我要为广大C++开发人员提供一个权威的答案—大多数人都有郁闷已久的疑问: 
我们原先掌握的技术在.NET的世界里是否还能派上用场?C++会降级到Win32 开发的次要
位置吗?微软会实现持续改进C++兼容性的承诺吗?
记住这一点很重要: Stanely是Visual C++语言架构师,并且他是新任的,因此,象MF
C、ATL、WTL等库和Visual Studio这样的工具,都不在Stanley的影响和经验作用范围之
内。因此,这次访谈就集中于绝大多数开发人员都关心的问题: Visual C++的将来究竟
如何?

首先,我问Stan是什么吸引他愿为微软工作。

Stanely的Unix技术背景深厚,同时兼具多种异质平台开发经历。显然,一些平台要比另
外一些易用。谈及.NET,Stanley毫不掩饰对其蕴藏理念的欣赏之情。“框架无疑是令人
惊奇、丰富和有意思的。”Stanely曾经有在让即使是线程这样概念简单的东西运作起来
都很痛苦的平台上工作的经历,因此,有那么一个容易理解的基础类库,提供诸如容易
理解的线程模型之类的功能,并可被你选择的任何一种.NET语言所访问,就极为重要。

对于Visual C++如何适应于.NET整体蓝图,起初Stanley只有有限的想法,但进一步研究
后,他惊讶地(同时也是高兴地)意识到,C++非但未被.NET遗弃,实际上更是一等.NE
T语言!

那么,对于Visual C++的将来你怎么看?并且,作为新任架构师,你的目标是?
对于将来,Stanley非常明晰。“我坚信Visual C++会有更加繁荣的将来!”。Stanley
已经会见过Visual C++开发组,并说他(她)们都有无容置疑的激情和活力。Stanely的
目标非常简单,“Visual C++将是值得选择的C++实作品”。他的个人目标是让广大C++
开发者选择Visual C++并不仅仅是基于工具和平台方面的考虑,而是因为它是C++标准首
屈一指的实作品。

关于编译器的兼容性

谈及C++兼容性,Stanley坦言最新发行版(Visual C++ 7.0)还没有正式出炉,但实质
性工作早已潜在进行,这就意味着更广泛的兼容性实现指日可待。他将推动这种兼容性
的进程,尤其是在模板领域。

尽管Visual C++ 7.0并没有完全实现Stanley乐于看到的所有特性,但他宣称这仍是直到
目前为止微软发行的所有版本的C++中兼容性最好的一个版本。它并非百分之百完美,但
仍不愧是一个优秀的高度标准兼容的编译器。凡是仍有争议的问题,将会完整描述于署
题为“Visual C++标准兼容性问题”的VS.NET文献里。

微软的目标是提供一个“富有竞争力的兼容的”编译器—这就意味着它并非百分之百兼
容。ANSI/ISO标准提到的几个特性(如施行于模板类的“export”关键字)将不会予以
实现,因为至少在眼下,理论上讲,微软认为他们语意不清。然而,微软正在努力工作
以确保Visual C++能够编译诸如Boost、Blitz、Loki等绝大多数流行库,并且完全兼容
STL。兼容的重点在于能够编译最流行的库,而不是百分之百的兼容。

微软C++产品经理Nick Hodapp也补充说,尽管高度兼容无疑是一个非常重要的目标,但
微软绝不会以牺牲生成的代码质量和强健性为代价来换取极端兼容。尽管如此,最近实
验室测试仍表明:在兼容性测试方面,它仍击败了时下几个流行的编译器。

什么时候可以看到新版本?

Stanely大笑起来,他说如果由他来决定的话,他每周都会发布一个升级版。但是,和V
isual C++本身一样复杂的诸如质量控制和过程(控制)同样必须要遵守。最新版将于2
002年2月左右发行,并预期同年随后对编译器做个升级,但目前尚不能确定是否可能。
当然了,他将为早日实现升级而奋战。Nick hodapp也同意这一点,并说极有可能在明年
可以升级到VC7。微软正在研究发行专注于兼容性的编译器的最佳机制,以期给明年带来
新气象。

很多C++开发人员感觉微软更宠爱象C#这样的新语言而让Visual C++靠边站。
Stanley希望C++将来能比现在在.NET上占有更多的席位。目前,Managed C++最大的好处
在于作为一种过渡语言。你可以移植你的本地应用到.NET框架中,或在你的本地应用中
使用.NET组件,但这并不是开发完全托管应用的最佳语言选择。

在这个尚未发行的Visual C++.NET(VC7)中,微软专注于互操作能力的特征。在所有托
管语言中,VC7具有最好的互操作能力,并且具有在同一个映像中兼具托管代码和非托管
代码的能力。他们还专注于生成MSIL的优化技术—VC7是唯一能够产生优化的MSIL的编译
器。在将来,微软将集中于ANSI/ISO的一致性的实现 (使托管/非托管代码兼容更多的
特性),就象专注于赋予Visual C++和C#同等功能(例如WinForms)一样。Visual C++
将被定位于.NET的系统级语言。

模板支持和泛型编程是必需的,并且微软也非常热切地准备实现codeDOM支持,同样还有
ASP.NET和WinForms。随着这些特性的加入,Stanley认为Visual C++必将成为.NET框架
下极具威力的程序语言选择。即使不支持模板,Stanley仍坚持认为Visual C++是唯一能
够提供比C#或VB.NET更多特性的语言。

Stanley庆幸微软从以公司为导向转变为更多地以开发人员为中心。他将推动公司对开发
者更加公开化,并乐于看到微软越来越对开发者更加负责。微软以改革和创新而著称,
但也可能成为置标准和开发者需求于不顾的冒进分子,Stanley将努力保证微软更多地倾
听开发者社团的声音,同时确保更高的标准兼容。

诸如C99规范里的新特征

在谈到关于是否扩展Visual C++以采纳C99规范的新特性时,Stanley声称有关标准本身
尚有待商榷。在C和C++开发中的分歧已经越来越受到关注,因为C++已经不再是前者的超
集了。微软的目标是实现高度标准兼容(但那是针对C++而不是C),如果C++标准被升级并
加入新特性的话,微软将把它们纳入Visual C++的实现中。

微软会考虑加入的新特性是:

1.已经被使用于代码中并可被其他编译器所编译,或者
2.这些特性已经成为迫切要求并且显而易见开发者需要它们。
微软不会仅仅因为那些特性在标准中提到就实现它们,而会因为对开发者有用而实现之


启示

在.NET世界里,Visual C++显然有一个充满生机和活力的光明前景。在简单性、趣味性
和兼容性方面,Stanley的目标是把这个编译器做成其他编译器可以参照的基准。它应该
易用、通用、讨喜,甚至无论何时,开发者一想到C++就会想到它。对C++兼容性的持续
改进以及将来对ASP.NET和WinForms的特性支持,将确保Visual C++必将成为.NET平台以
及本地开发的极具威力的语言。
在谈到开发人员是否会转向C#而不是Managed C++时,Stanley认为会有更多的人从VB转
向C#而不是从C++转向C#。(Visual)C++是更好的、更具通用性的并且是.NET上唯一优
化的编译器。

-全文完-

--

       我    闭上双眼
       天空  变得透明

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.229.69]
--
※ 转载:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: 202.118.229.69]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:6.685毫秒