青软社区-青软培训软件学习社区

 

 

搜索
青软社区-青软培训软件学习社区 论坛 C# 最好的编程语言是什么,C#或java?
查看: 977|回复: 1
go

[交流] 最好的编程语言是什么,C#或java?

Rank: 7Rank: 7Rank: 7

快速分享:收藏到QQ书签分享到白社会分享到豆瓣分享到网易微博添加到百度搜藏
发表于 2011-4-21 12:58 |显示全部帖子
  这世界上没有什么比编程工具更加牵动程序员的心。VC、VB、DELPHI、JAVA……这些耀眼的名字不仅占据了程序员的生活,而且似乎已经成为了某种信仰。可是,伴随着新世纪的脚步,这些信仰又一次遭遇了重大的挑战。微软,这头被法官和黑客们折腾得既疲惫又恼怒的狮子,发誓要保住它头上的王冠,拼尽全力,拿出了看家的本事——.NET战略。作为 .NET的核心开发语言,C# 顺理成章地浮出了水面。程序员们也就不得不做出一个痛苦的选择,跟在谁的后面?要找出答案就不得不作一番比较和预测。笔者作为一个资深的程序员,斗胆在此狂言,权作抛砖引玉。  如果抛开一切非技术方面的因素,C# 无疑是这个星球上有史以来最好的编程语言,它几乎集中了所有关于软件开发和软件工程研究的最新成果。面向对象、类型安全、组件技术、自动内存管理、跨平台异常处理、版本控制、代码安全管理……你不可能在另外的一种语言中找到所有这些特性。尽管像很多人注意到的一样,当我罗列上述特性时,总是让人想到JAVA,然而C# 确实走得更远。但现实的情况是,非技术的因素往往更能决定一个产品的未来,尤其在计算机软件的历史上,技术卓越的产品,如OS/2、Mac OS、UNIX等,都败在了Windows那漂亮的脸蛋儿下。而这一次,微软的角色好像从一个赤手空拳的革命者变成了仗势欺人的老地主,如果真是要变天,那C# 这孩子岂不是投错了胎?可能情形并非如此糟糕,毕竟瘦死的骆驼比马大,而且C# 已经提交给了一个标准化组织,一旦成了国际标准,说不准真有哪个手痒的大侠(也有可能是微软自己)给移植到Linux 和别的平台上。那样的话,JAVA可就惨了。因为JAVA的用户主要是网络服务的开发者和嵌入式设备软件的开发者,嵌入式设备软件不是C# 的用武之地,而在网络服务方面,C# 的即时编译和本地代码Cache方案比JAVA虚拟机具有绝对的性能优势。何况C# 一旦成为一个像C 一样的公共的标准,软件开发商既可以省去JAVA的许可证费用,也不必担心成为微软的奴隶,那些反微软的人士和主张厂商独立的人士可能也不会有什么意见。这可能正是微软所期待的。
  如果把C# 和 JAVA 在网络服务领域的争夺比作未来制空权的争夺的话,那么C# 和传统通用快速开发工具——VB、DELPHI等的较量将是地地道道的白刃战。可能最惨的程序员就是VB程序员,在微软,VB就像离任的克林顿,不但失去了所有的光辉,而且乱事缠身。想想吧,VB6写的项目必须用转换工具转换成基于.NET的代码才能在VB7中调入,几乎面目全非。由于VB7遵循为迎合.NET而建立的通用语言规范(CLS),几乎把所有原来只在C 、JAVA等语言中可以运用的特性统统加了进来,只是语法和原来兼容。如果你是第一次在VB7中看到自己的旧VB6项目转换之后的代码,一定要当心你的心脏!所以,努力吧,别告诉我你将就此退休。DELPHI的状况也好不到哪里去,原来的看家本领是做起应用来又快又好,可现在看看最新的VS.NET Beta 1, 你会感到如此熟悉,众多的属性列表、组件……谁让你穷呢,连总设计师都养不住。
  其实在编程语言中真正的霸主多年来一直是C ,所有的操作系统和绝大多数的商品软件都是用C 作为主要开发语言的。JAVA的程序员绝大多数也是C 的爱好者,PHP的成功里面也有类似C 的语法的功劳。在操作系统、设备驱动程序、视频游戏等领域,C 在很长的时间内仍将占据主要地位,而在数量最大的应用软件的开发上,C# 很可能取代C 的位置。首先,C# 和JAVA一样,简直就是照搬了C 的部分语法,因此,对于数量众多的C 程序员学习起来很容易上手,另外,对于新手来说,比C 要简单一些。其次,Windows是目前占垄断地位的平台,而开发Windows应用,当然微软的声音是不能忽略的。最重要的是,相对于C ,用C# 开发应用软件可以大大缩短开发周期,同时可以利用原来除用户界面代码之外的C 代码。
  但是,C# 也有弱点。首先,在大量的现有Windows平台上,C# 的程序还不能运行,因为C# 程序需要 .NET运行库作为基础,而 .NET运行库将作为新一代的Windows(Whistler)的一部分发行, 或以Service Pack的形式提交给Windows Me 和 Windows 2000用户。所以在近期,C# 会主要在服务器上得到应用。其次,C# 能够使用的组件或库还只有 .NET 运行库等很少的选择,没有丰富的第三方软件库可用,这需要有一个过程,同时各软件开发商的支持也很重要。第三,JAVA的成功因素里有一些是反微软阵营的吹捧,虽然“只写一次,到处运行”只是一句口号,但毕竟已经是一种成熟的技术。而C# 的鼓吹者目前只有名声不佳的微软,且只能运行在Windows上。实际上这两种语言都不是不可替代的,理智的说,对软件开发商而言,什么用的最熟什么就是最好的工具。尤其对C 的使用者,C# 没有带来任何新东西,因为.NET运行库在C 中也可以使用,没有要换的绝对的理由。
  C#在未来成为Windows平台的主流而崛起将是无法逆转的趋势,而Java依然将在UNIX、Linux等平台上成为霸主,而作为老牌王者,C语言在系统软件领域也将维持它的趋势。C#可以说是未来最有希望的开发语言,而且,C#的前途也将随着Windows平台的广泛应用而更加宽广。


该贴已经同步到 青软推荐阅读的微博
青软培训-软件培训专家

Rank: 3Rank: 3

发表于 2011-5-5 10:46 |显示全部帖子
各有利弊
你需要登录后才可以回帖 登录 | 注册

社区新帖
【视频下载】青软培训视频教程-Hibernate实
【视频名称】青软培训视频教程-Hibernate实战-操作入门 【视频大小】231M 【视频 ...
请教,各位老师一个问题,可能这个问题问的很
用jsp连接数据库没有问题,但是如果将连接数据库封装成一个类,然后再在jsp中用调用方法 ...
美轮美奂,节能环保,联想扬天一体机美图欣
美轮美奂,节能环保,联想扬天一体机美图欣赏 联想扬天为SMB和SOHO用户量身定做 ...
职场成功十大好习惯
一、不轻言退缩 二、不停学习,不断修正。 三、坐言起行,立即动手,从小事做起。 为 ...
现在的网络上的论坛真的是大行其道
青岛田园网论坛www.tioo.net,是青岛地区地区新兴的论坛之一,主要服务于青岛百姓的日 ...
你的未来不是梦—与青软学子共勉
很庆幸你选择了软件行业。这是一个前景无限的朝阳行业,一个充满机遇与挑战的行业,一 ...
高质量代码三要素[二]
3.可变更性 前面我提到了,软件的变更性是所有软件理论的核心,那么什么是软件的可变更 ...
日志
guxinzixuan腾讯发布2011年第一季度财报
腾讯第一季度总收入为人民币63.384亿元(9.668亿美元 ),比上一季度增长14.7%,比去年同
guxinzixuan我的互联网情节
     有人的地方就有江湖。在我看来,互联网更像一个江湖,唯一不
liuqitest
[attach]239[/attach][attach]240[/attach][attach]239[/attach]
MengGuangFulinux的那些事
怎么社区里面没有关于linux的帖子呢  我刚用虚拟机安装ubuntu系统 我想问下怎么能
MengGuangFu?
网站主页什么时候改的 昨天还没事
一个人的旅途学会感恩,收获人生
生活当中,自己所做的事情不一定都是别人认可的,也许这在当时会成为心中的纠结。但是
一个人的旅途Java查询结果生成Excel表格
Java中将查询的结果生成Excel表格,举例如下: 需要在WEB-INF/lib/中导入三个Jar包

青软培训-踏踏实实育人-勤勤恳恳奉献 ( 鲁ICP备09077726号 )

GMT+8, 2012-5-21 06:14 , Processed in 0.051292 second(s), 24 queries .

Powered by Discuz! X1.5

© 2001-2010 Comsenz Inc.