ITPUB调查:C#成为.NET平台主流

http://publish.itpub.net/msoft/2007-11-29/200711291613937.shtml

编者按:
    中国IT技术趋势大调查活动本月9月15日启动,目前已经圆满结束。在线调查期间,受到了来自ITPUB和IXPUB以及其它合作网站的网友的极大关注和积极参与。本次网上调查共回收调查问卷15,817份问卷,合格问卷为14,774份。其中对.NET开发和技术应用的情况研究中得的调查数据令人惊讶,本文将为你一一揭晓。

    据调查,2007年IT技术人员主要使用的基于.NET平台开发语言是C#,占到56.3%;其次是VB.NET,占17.4%;VC++.net、C++.net和J#分别占11.1%、8.3%和2.8%。 


   本次调查,C#毫无悬念的取得了的第一名的位置,这一比例较之去年有增长了7%。而值得关注的是,VB.NET的比例相比去年的26.3%有较大的下降。.NET平台其他语言的使用情况变化不大。

C#成为主流是必然

   当初微软推出.NET平台时,其目标是最终利用其C#编程语言取代其之前的语言,这也是C#在.NET平台上成功的最重要原因。

    而VB当年有非常强大的用户群,但在.NET平台上,VB人群的分流比较严重,一方面,VB.NET采纳了包括Java在内的许多其它面相对象编程语言的功能和特点,它们的相似,使有大量企业应用需求的开发人员流向了Java;另一部分则流向了C#。
   (1)C#与VB.NET。
   除了C#,排名第二的就是VB.NET了。他们同样都是为.NET类库设计的, 要说历史,C#远没有VB的历史悠久,它也是新语言,它吸取了Delphi,JAVE,C++,VB这些语言的很多优点。要说速度方面, C#不会比其它语言慢到哪里去;要说面向对象,相信大家都知道到目前为止,没有什么语言的面向对象比C#的强;要说益用,从Windows方面到Web等方面已经足够多?还有,在开发效率方面,远比C/C++快吗?另外在跨平台方面,微软也在逐渐向.Net跨平台靠拢。用开发人员的话来说, C#=速度+真正的面向对象+非常益用+开发效率。

    而对于VB.NET,有两年以上经验的开发人员认为,VB6转变到VB.NET变化已经非常大了,以至于它基本上就是一门新的语言。尽管它为了适应.NET类库而被重新设计了。但是大部分开发人员还是认为C#在各方面表现依然出色,不愿轻易迁移到别的开发语言。


(2)J#的边缘化

   从调查数据看,另外一个值得关注的是,J#语言在.NET平台上的使用日益边缘化。只占到2.8%。估计在实际项目具开发中的使用情况会更少。

   J#的设计有助于开发人员能够将原来的Java应用软件向.Net架构进行移植,但不允许开发人员利用它去开发独立的Java应用软件。

   为了将Java开发者引向它自己的.Net互联网服务,微软公司曾发布了一个开发工具Visual J#.Net。Visual J#.Net是为配合微软未来的Visual Studio.Net开发工具包而设计的,但Visual Studio.Net却不允许开发人员利用它开发独立的应用软件,因此,用它开发的应用软件只能够在微软的平台上运行。

   微软推出Visual J#.Net的目的是避免因不能使用Java而对自己造成的损失。微软已经意识到了许多开发人员对Java的喜爱,因此它希望采用一种能够使他们转向.Net的方法。除了一些好奇心因素之外,大多数的开发人员都会对使用功能受到限制的Java版本感到沮丧的。

   由于它的功能上有一定的限制,Visual J#.Net不受双方之间协议的约束并且允许微软逐渐脱离诸如由Sun、IBM and Oracle公司支持的Java语言。

   2007年3月,Microsoft发布了J# Redistributable 的64位版本。同时也宣布了关于J#的另一项决定,就是在下一个新版本Visual Studio2008中,J#将被取消不再出现。

C#使用版本的情况


   从调查数据分析,目前使用.NET Framewok2.0的用户已经高达67.4%,从这个数据可以看出,目前C#的使用大都基于2.0的版本。

   据了解,从1.1升级到2.0,用户显得非常轻松。但升级到C#3.0,尽管有一些用户已经升级,但是很多人还存在一些障碍。究其原因,主要是由于C#3.0所依赖的平台.NET Framework 3.0框架并没有对现有技术作进一步的改进,而是引入了四种基本的新技术; 另外一方面,对.NET 3.0,有很多争议,“我的界面真的要那么漂亮么?”因为企业开发当中,业务流程、中间件的支持、性能等,这些东西比界面是否为3D更重要。
用户对C#3.0的期待

   调查发现,2007年IT技术人员最关注微软C# 3.0中的对象和Collection初始化符特性,占24.3%;其次是隐式类型本地变量、匿名变量、扩展方法及查询表达式特性,分别占22.2%、21.5%、21.5%和18.8%;表示关注表达式树和Lambda表达式的分别占10.4%和12.5%。


   在这个开发效率,可维护性,可扩展性,安全性重要性日益增加的时代,好多语言显然已经落伍了。C#3.0的出现令人激动不已,Automatic Properties, Object/Collection Initializers, LINQ Language, Extension Method等等无数的新技术大大加快了我们的开发进程,而 LINQ语言在数据检索方面的巨大优势更是其它语言无法比拟的。

   LINQ全名叫做Language-Integrated Query 是支持以类型安全方式查询数据的一系列语言扩展,这项技术和已经发布的Visual Studio2008以及.NET Framework 3.5一起发布了。LINQ语句将SQL的部分语法整合进C#语句中,使得程序在检索数据方面显得相当灵活,增强了编程语言在数据检索方面的能力。

   我们从此图表中可以看出,C#中位居高关注度的前三位的特性是对象和Collection初始化符特性、隐式类型变量,而这三个特性也恰恰是为LINQ服务的。

   LINQ的无限潜力必将推动C#3.0的发展。

   据调查,2007年IT 技术开发人员主要通过毕业后自学入门来获取.NET方面的开发知识,这个比例高达48.6%,那么易用、易上手、高效,又能完成任务的语言便成为这些人员的首选。于是,无论是技术开发爱好者,还是专业开发人员都涌向了C#。而且,随着微软Visual Studio2008和.NET Framework 3.5新产品的发布,也会越来越多的人开始使用C#3.0。

结语

   调查还发现,有68.9%使用.NET的开发人员将考虑迁移开发语言。其中,有27.7%的虑转到C#,有10.1%的考虑转到VB.NET,也有31.1%的.NET开发人员表示未来不会转移到其他开发语言,他们是.NET的忠实拥护者。显而易见,C#已经占尽商机,甚至成为了参与企业应聘时的第一项基本能力。谁能不说它是主流呢?
posted on 2007-12-01 18:45  巍巍边疆  阅读(670)  评论(2编辑  收藏  举报