当前位置:编程学习 > C#/ASP.NET >>

C#与JAVA谁有更大优势?

C#与JAVA这两者之间,各自有着如何的优势与劣势?JAVA有着跨平台开发的特性,会引领未来开发格局的主流吗?
答案:
劝你不要去学C#,java是业界使用多年的语言,其优点已经被广大用户所认可,并且还在不断完善中。面对java的来势汹汹,Micrisoft推出了语法上与java极为类似的C#语言,实际上是个java的盗版。事实证明,C#在快速开发中小型软件的效率比较好,但是在企业级的开发上非java莫属。所以,C#并没有象Micro所预期的那样给业界带来多大的冲击,原因很简单:java已经足够好了,为什么还要去用C#。
C#与Java,单从语言角度来讲,C#可能更强一点。
但是,我们需要选择的是platform,而不仅仅是语言本身。c语言好吧,但我们现
在不选择他,因为他不适合开发大型的分布式的应用程序。J2EE和.NET,我的选
择是J2EE。

java的成功,应该说是jcp成员的良好协作的结果。基于J2EE specification,
各个公司提供了scalable, available, high-performance的产品,因为他们是在implementation上的竞争。java的成功,是一种商业运作模式的成功。java,已经不能单纯的理解为java language,而应该是java technology。
任何一个平台的成功,需要有四个基本要素consistency, adoption,openness , specification。

Consistency
java的write once,run anywhere,无疑是一致性方面的最好的明证,其中的好
处,我就不讲了。

Adoption
微软总是希望别人买他的产品,不管他是好的,还是坏的。一旦我们选了.net
,我们就被绑定到了windows的平台,除了操作系统,还有开发工具,服务器,等等。也就是说,一揽子的方案,都是微软的,好像没有了别的公司。如果有一天,我们想换成unix了,那么,我们开发的产品,或许只有写在纸上的文档还有用。这个代价太大了。如果用J2EE,操作系统,你换吧,不想用WebLogic了,你就用Websphere好了,tomcat+jboss也可以。j2ee给了我们很好的选择性,而且在交换平台的时候也减少了我们的费用。我总是想不通,为什么微软在走IBM 80 年代的老路,总是提供封闭式的系统。

Openness
良好的开放性提供了更好的协作性。J2EE的Specification都是公开的,也就是说,所有的接口都是标准的,对于大型项目,每个人,甚至一个公司,都只能担当一个小角色,我们开发的产品需要和别人协作。我觉得在Specification级别上的开放,比开放源代码要好,(如果说现在微软公开了他的操作系统的源代码,有多少人去看呢。我对微软的观点,开放源代码遏制了创造性,某种程度上表示赞同),因为源代码只提供了一种实现形式,并不一定是最好的。Oracle的总裁说,在公开标准的时代,没有那个产品今天是最好的,明天会还是。看一看

WebLogic和Websphere的竞争,还有Oracle9i Application server 中的许多好的特性,我们可以看到,基于实现的竞争是有很大的优势的,我们在得到最好的性能以外,还可以和别的工具无缝的集成。难道这不是很好的方案吗?

Specification
对于开发人员来讲,有许多人都多多少少希望了解一点系统底层的结构,所以
,有一份平台的Specification是很重要的。我们需要详细的了解平台api,policy,inte易做图ce。
java这门语言也经过了这么多年的发展,也已经很成熟。J2EE已经有了3年的使用,可以说已经很成熟了,而且已经占据了大量的市场份额。微软的.net到现在还是概念,真正平台的推出,也要在一两年以后。.net平台到底这么样,有没有那么好,我们还不知道,必尽需要时间的检验,也就是说,选择.net,我们有一定的风险。
我承认客户端技术方面,没有公司可以跟微软比。无论是传统的windows界面,还是浏览器的表现形式,都非常的丰富,使用也很方便。但是,在服务器端应用,微软的应用好像市场份额不大,无论是操作系统,数据库,还有他的Transaction server,而且集中在低端。所以,就让微软提供客户端吧。
C#简单,开发速度快,做短期的项目最佳选择.开发速度快是牺牲了一些东西实现的,例如:开发的经验和熟练
java功能强大,开发速度比不上C#,因为老是要调试错误-_-!不过java可以跨平台,这是一个重点.还有一个重点是你的英文水平要比较高,因为java的api是英文的-_-!
这个貌似现在已经是主流了.
java已经成为主流啦 除非你想造火箭 否则劝你还是走JAVA路线吧 毕竟现在都是面向对象编程啦
java比较好布置
就我个人来说``JAVA比C啝.NET都要强一点```相对来说也比它们难明白点
如果你不喜欢复杂的``那你选择.net```.net啝C现在也是很有市场的!

上一个:求一个C#创建winservices教程说解
下一个:C#语言有什么样的优点和缺点?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,