C#:我们需要它吗?
作者: Steven J. Vaughan-Nichols
日期: 2000年07月03日
美国微软公司于当地时间6月26日,公布了新型的程序设计语言“Microsoft C#”,据微软公司称该语言适用于微软上周公开的基于“.NET”平台的XML基础应用开发业务。笔者并不认为这一新编程语言的发表有什么意义,就是对所有的软件开发人员来说也没有任何帮助。
如果在开发过程中,程序运行的速度很重要,我们可以选择C或者C++。如果开发周期的速度是重点,那么可以选择快速应用程序开发包,类似Inprise公司的Delphi。如果开发数据库访问,可以学习SQL结构化查询语言。如果想开发通用网关接口类的网络应用软件,可以使用Perl或是Python。如果想编制可移植性好的程序,理想的选择就是Java,那么C#可以做什么那,让我们来看看吧 。
微软公司非常严肃的声称,C#并不是微软公司针对Sun公司的Java语言而推出的产品,当然这是个弥天大谎,骗小孩都不会信的。
笔者曾有幸看到该产品规范说明,微软公司分布式开发平台部的Andrew Layman对我说,C#可以做任何Java可以做的事情,但它绝对不等同于Java,如果真的和Java 看起来很像的话,那只是--那最多就是利用了些Java语言的思想。
现在情形已经明朗,微软只能眼看着Java的发展,而做不出什么来了,Sun公司和微软为了Java 曾在法庭上激烈交锋,可现在Sun已经胜出。 微软公司现在也不想在Java上得到什么,但是眼看着Sun 公司的发展状况越来越好,这也折磨着微软公司CEO巴尔默的神经,所以,为了给Sun一点颜色看看,给微软自己的开发人员同样类Java的东西,出现了C#。
微软公司声称:C#将使C++重新焕发光彩,对C++程序员来说是这是一个他们时刻渴望的真正的奇迹。真是这样吗?微软公司承认,如果运行C#应用程序必须在一个虚拟机环境。噢!这哪里是C++ ,这样的应用软件分明是Java模式的!
微软公司的却对C#大肆吹捧,它声称:C#是个崭新的概念,C#是一种以C和C++为基础的目标指向语言,开发者能够以更少的源代码完成更多的事情。因为可以灵活应用在C或C++已经熟练了的技巧,削减开发成本并可缩短开发时间。真是一个了不起的Java killer。是吗?至少笔者不这么认为。
假设你为Windows平台开发软件,按照微软的说法,使用C#似乎不错,但如果开发者现在准备用C#来开发的话,目前看来条件还不成熟。
微软承诺在七月份提供一个包含C#的Visual Studio 7 Alpha版本,当然,C#也会出现在Visual Studio 7的正式版中,但笔者认为,Visual Studio 7的正式版本不会早于2001年初。而且就是到了那个时候,C#还是会碰到一些问题。
打开天窗说亮话吧,C#的真正目的就是让开发人员抛弃Java,去使用微软的可替代产品。笔者不知道其它人的想法,但从个人角度出发,本人非常不愿意卷入愚蠢的编程语言的宗教冲突。