首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

最近总看到很多讨论Java走上坡路的帖子,新人求澄清

2012-12-26 
最近总看到很多讨论Java走下坡路的帖子,新人求澄清!虽说发自内心的不怎么喜欢C#,但是C#有很多特性真的比Ja

最近总看到很多讨论Java走下坡路的帖子,新人求澄清!
虽说发自内心的不怎么喜欢C#,但是C#有很多特性真的比Java好,用起来方便多了,而且近几年来,C#的确是抢占了Java越来越多的市场啊,照这种趋势发展下去,再过5年,Java不会真的被淘汰了吧?

随便举几个例子:
1. C#里DateTime别提多好用了,Java里的Calendar相比起来就垃圾多了,最后还得去用apache的DateUtils来弥补
2. C#的struct简化了很多操作,Java里还要装箱拆箱
3. C#的ADO.NET,Java里有可以类比的好东西么?
4. C#的as关键字,Java里有对应的好东西么?
5. C#的LINQ,lambda expression,Java里有这么好的东西么?

总结起来就是:Java有的好东西C#都有,C#有的很多好东西,Java一个都没有!

新手在此迷茫的请教各位Java前辈,10年内到底Java会不会被C#取代而没落??
[解决办法]



好吧,上面那个2011年的,这个是2012年九月的,你自己欣赏吧

一个库做没做好是衡量一个语言优良的标准??既然apache 的DateUtils能让你满意,就是说java能做到,
你觉得你这个观点站得住脚?更何况Calendar哥用的挺顺手的,没觉得比什么DateTime差
引用:
现在随便打开一个网站,有几个不是asp.net做的?


这真的可笑,你都开的什么网站??还就是几张网页??先开拓开拓你的视野,再来bb
[解决办法]
引用:
10年内到底Java会不会被C#取代而没落??

未来的事谁也说不清楚。

目前的事实是:Java仍有大量的拥护者,.Net想短时间内蚕食掉这么多的用户似乎不太现实。
其实最近对Java前景不看好的帖子多起来的原因并不是针对Java自身的,而是Oracle的一些做法确实让人很失望。

另外,下面的内容可能有人会喷。在下这里只强调一下,本人只是站在中立的立场描述事实而已。

关于跨平台和开源。
MS并没有在其它平台上做.Net,但这不表示没人做。Unix/Linux上的Mono存在其实已经不是一年两年的事了,还有人不断的说.Net只能在Windows上运行……就算是反对使用C#的,知己知彼也是要做到的吧。
对于开源,.Net虽然没有公布源代码,但可以通过反编译工具查到类库的IL(相当于Java的字节码)。别人怎么看在下不清楚,至少在下觉得看Java源代码和字节码没什么区别的吧。
[解决办法]
Java的集合类比C#写得好。

Java的泛型是类型擦除的,比C#更灵活更好用。

Java的泛型+反射+Annotation威力强大,轻松实现aop编程,C#没有。

Java的枚举类比C#强很多。

Java的instanceof关键词很好用,C#没有。

Java的反射类库比C#好用。

Java的DataFormat比C#的好用。

Java对开源数据库的支持更好,对Oracle的支持也更好。

还有很多。。。

现在这2个语言差异越来越大,向着不同方向发展,C#以易用性为目的,容易限制程序员的自由发挥。微软喜欢推倒重来,说不定到了某个版本,它会把C#的某些特性删除造成不兼容,或者发明一种更好用的语言,把C#晾在一边不理它了。

C#是微软的,所以windows 图形界面编程得到一定强化,但是好点的界面还是靠C++,C#是个摆设。

目前Java与Oracle公司关系密切,数据库编程的能力将会变得更牛,还有分布式系统的开发会更牛。

Oracle目前推出了Swing的升级版JavaFx融入JDK,做出的界面很漂亮,比Flex更漂亮更易开发,开发桌面程序很合适,可以代替VC++开发的界面,比VC++容易多了。
[解决办法]
引用:
虽说发自内心的不怎么喜欢C#,但是C#有很多特性真的比Java好,用起来方便多了,而且近几年来,C#的确是抢占了Java越来越多的市场啊,照这种趋势发展下去,再过5年,Java不会真的被淘汰了吧?

随便举几个例子:
1. C#里DateTime别提多好用了,Java里的Calendar相比起来就垃圾多了,最后还得去用apache的DateUtils来弥补
2. C#的struct简化了很……

这些东西提出来就说明了,你还停留在初级阶段啊
哪有人拿类库来比两个语言优劣的
或者这么说,即使是你说的这几个也无非就是一种坐井观天的青蛙式想法
datatime比calendar好用吗?java对于时间的支持又何止一个calendar?对于date的包装timestamp,sql.date,long等等,或者说只是你自己觉得那玩意儿好用罢了
struct难道不破坏面向对象完整性吗?何况,用一个类来实现struct有什么区别吗?
ado.net和java比数据库技术?你想要笑死大牙米?或者说你只用过jdbc?jdbc不好用?spring的jdbc包装怎么样?还不够?mybatis怎么样?再不够?hibernate够了不?
关键字...我服了...这都能拿来比...C#有instanceof关键字吗?这也能拿来比一下
LINQ,lambda expression是很好,但是又怎么样那?说穿了也就是种变种的脚本,你怎么就知道java没有这种东西了,哪个人能站出来说他知道java所有的扩展库? 题外话,要说扩展到话javaCC用过吗,C#能自己做编译器吗
多喷就该变成愤青了...

引用:
总结起来就是:Java有的好东西C#都有,C#有的很多好东西,Java一个都没有!

新手在此迷茫的请教各位Java前辈,10年内到底Java会不会被C#取代而没落??

这话我也听了10年了吧,貌似至今为止java活得还是好好的,当年叫的最凶的几个人连脸都看不到鸟,希望10年后LZ能拍着胸脯说,java已死
[解决办法]
引用:
引用:
引用:

你操心太多了,呵呵,

这不也是想看清趋势,提前做好换语言准备么。。。



我能笑吗,不知你所谓的趋势是什么?
就是WINDOWS上GUI那一小块吗?
这么说吧,C#能在LINUX用吗? 你见过有企业应用用C#吗? 你见过有支撑系统用C#吗? 你见过通信行业用C#吗?
C#开源吗?C#有多少开源类库选择?C#离了WINDO……


“C#离了Windows还能干嘛?”在下上面说过了吧,Mono公布已经有几年了,还说这话不会被人笑话么?

在下对语言之争一向都是中立的,“各有所长、各有各的优势领域”是在下一贯的看法。
虽然WORA是Java宣传口号,但并不表示这一特点是Java独占的。Mono解决了.Net不跨平台的问题是不争的事实(虽然MS官方可能并不认为这是个问题)。

还有“Java比C#快”?在下真心不这么认为。不管在Windows下是Linux下,对同一规模的算法运算.Net都比Java效率高,不少人说.Net效率优化比Java好并不是空穴来风。不过话说回来,从SUN开始Java的开发者就从没拿Java的效率来说事。也就是说Java的开发者都没把运行效率当作Java的优势来考虑,所以总拿不是Java优点的地方来和别的语言比不碰壁才怪。

其实在下也明白上面的各位想表达的真实意思:“JSP服务器比ASP.Net服务器运行效率好”。没错,这是事实。IIS说白了只是款测试用服务器,对于其它的ASP.Net服务器,恕在下孤陋寡闻,只知道Apache,但它比Tomcat等JSP服务器起步要晚得多。总结起来:Java与.Net相比的优势并不是效率高,而是有着丰富的经验。这也是开源带来的好处吧。

热点排行