一天不如一天了,无语

解决方案 »

  1.   

    今年8月份的排行榜,java还是稳坐老大的位置...java更是一个平台。
    我等之亏其冰山一角而已...
      

  2.   

    那你说什么技术趋势好,可能比起那几个势头高的看起来是没落点,不过你也不要忘了,根深蒂固这话,不管怎么说java还是首屈一指的大哥,使用学习人数最多的一门语言,大的系统还是用java和c++好,小的那就多了如php等
      

  3.   

    java虽现在排在前面,但其趋势走向是每况愈下的
      

  4.   

    片面呀,做企业级的应用。java还是很强大的。看排行就说java不行了。
      

  5.   

    说实话,java 不是以前那个 java 了,越来越臃肿,连 sun都要被收购了。
      

  6.   

    一开始我也是看排名,然后学.NET,搞了一阵子,觉得还是JAVA好。现在搞JAVA,.NET只能照MS的套路出招。很是不爽。
      

  7.   

    现在的项目中,就是用.Net做服务器端的应用软件开发,用Java做服务器端的web开发~~ 各取所长吧。
      

  8.   

    首先,java从来都没有达到C/C++的王者地位。
    其次,java还没到没落的时候。
      

  9.   

    java是instance,思想是interface/abstract理解了我的话,就释怀了。阿门,
    阿弥陀佛,
    阿里录亚。
    土地显灵。
    都是祈祷的话,哈哈good luck
      

  10.   

    被收购后,我看好Java前景。
    还要继续深入学习。数据库的解决方案也用了不少,都是使用调用级界面的方式,已经过手很多将CLI调用界面转换到JDBC调用级界面方式,就是C++开发界面,DB调用也优先使用JDBC,明显是看到甲骨文收购了SUN。如果有一家在数据库上能撼动甲骨文,我想JAVA就真有可能老了。
      

  11.   

    NET开发效率最高,我们公司做网站项目的首选;PHP是做大型网站的首选;JAVA目前用得越来越少。
      

  12.   

    太片面了吧。。全时间这么多企业。一些小企业开发小项目一般用cms之类的,大些的项目用php,因为免费,开发资金少中型企业大多数用.net和java,当然可能.net的可能多点,因为.net得效率高,开发时间短,但是涉及到安全.net就稍逊了一点,大企业当然是C++(c),java了。类外还有一些脚本语言发展迅速。
    见:http://www.gfz4.cn/basic/computer/200902/152.html
      

  13.   

    在我的职业生涯中,我已经编写了无数的Java代码;而且,我仍然认为Java一门伟大的(程序)语言。相对于C++和Smalltack,Java已经有了很大的改进;但现在,即使是Java,也已经开始感觉到了其15年的积重。  事实上,在我的经历中,我总是不得不面对Java的设计和规范上的一些错误、缺陷和不足,这些东西,让我的Java程序员生活少有乐趣可言。现在全世界的Java程序员有数百万之众,Java写就的代码更达数亿行,要是我说Java在不久的将来死去,这还有些远。不管怎样,随着一些兼容JVM的语言出现(我最钟意Scala)后,这些问题变得越发不能容忍了,我开始想,Java老了(但并不脱离JVM)。具体说来,我认为Java语言的10大问题是:  1、缺少闭包(closure):我想这个不需要解释了。函数式编程已经存在几十年了,但最近几年,它们获得了越来越多的关注,最主要的原因,是它可以自然地编写并行程序。我部分的同意Joshua Bloch强调在Java中引入闭包的问题需要再想一想(BGGA提议的方式真的很糟),至少闭包的缺失,使得在Java中做任何真正的函数式编程都是不可能的。  2、缺少一等函数:这个问题与前一个有些关联,但我认为它更糟糕。在Java里,要达到类似效果的唯一方式,是使用著名的、丑陋悲惨的单方法匿名内部类,但这看上去的确是一个拙劣的方法。甚至在C#中,也通过代理机制,提供了一个更好的实现。  3、原生类型(Primitive types):如果在Java中一切皆对象,那是多么完美啊,但他们偏偏不这样设计。因而,这一点导致了一些问题,比如,不能把一个int放到集合 (Collection)里,这个在Java5中通过自动装箱特性得到了解决(下面会提到)。它也造成了传值与传引用上的困扰,原生类型数据是通过值传给方法的(复制一份拷贝,然后传给函数),而真正的对象是通过传递(译注:其实是复制对象地址再传递,因此应该也是传值方式,只是由于函数内部可通过这个对象地址访问对象,因此效果上类似传引用)。  4、自动装箱(Autoboxing)和自动拆箱(autounboxing):这个特性是为了解决因原生类型的存在所导致的问题,在 Java5引入的。它允许静默地转换原生类型到相应的对象,但这常常导致其它的问题。比如Integer可以为null,但int不能,因此这时JVM只能抛出一个难以调试的空指针异常(NullPointerException)。此外,它还可能导致其它奇怪的行为,就像下面的例子,我们就很难理解,变量test为什么是false:
     Intger a = new Integer(1024); Intger b = new Integer(1024); boolean test = a < b || a == b || a > b;  5、缺少范型具类化:范型是Java5引入的一个很酷的特征,但是为了保持与旧版本Java的兼容性,导致缺失某些重要的特性,尤其是不能在运行时反省范型的类型。例如,你有一个方法,接受List参数,如果传进来一个List,你却不能知道运行里该范型的确切类型。同理,你也不能创建范型数组。这意味着,尽管下面的代码看起来很自然,但却不编译不了:
     List[] listsOfStrings = new List[3];  6、不可避免的范型警告:你有发现过自己陷入不可能去掉的关于范型的警告么?如果你像我一样大量使用范型,我打赌你碰到过。事实上,是这个问题的规模化症状,让他们认为需要引入一个特定的注解 (@SuppressWarnings("unchecked")) 来处理这种情况,我觉得,范型应该可能被设计的更好。  7、不能传void给方法调用:我得承认,这种给方法传递void的需求,乍一看有些怪异。我喜欢DSL,当我实现自己的DSL库 (lambdaj)的一个特定特性时,我不得不需要一个方法声明成这样的签名:void doSomething(Object parameter),这里为这个方法传进来的参数parameter,是另一个方法调用的结果,它唯一的目的,是注册调用(的对象)自身,以可以在以后执行它。让我吃惊的是,即使println方法返回void,看上去也并没有一个好理由,不允许我把代码写成这样,:
    doSomething(System.out.println("test"));  8、没有原生的代理机制:代理是一种非常有效和应用广泛的模式,但Java提供的代理机制,只针对接口,而不是具体类。这是为什么象cblib 这样提供这种机制的库,被如此多的主流框架,如Spring和Hibernate,采用的原因。此外,由于cglib通过运行时创建被代理类的子类来实现的,因此这些种方式有一个众所周知的限制——不能代理final类,比如String。  9、差劲的Switch...case语句:Java规定,switch...case只能选择int和enum(Java5开始)。这一点如果跟更现代的语言如Scala相比,看起来简直太弱了。  10、受检查异常(Checked exception):类似原生类型,受检查异常也已经成为Java的一个罪孽之源。它迫使程序员必须做下面两件极其糟糕讨厌的事情中的一个:让你的代码里充斥大量的、糟糕难读的、容易出错的try...catch语句,而这样做的最大意义,只是将捕获的异常,包装成运行时异常,然后再重新抛出;或者是让大量的抛出声明子句污染你的API,让接口缺少灵活性和可扩展性。  真正的问题是,这里我提到的这几大主要问题,唯一的解决办法,是要做一个痛苦的决择,定义一套新的语言规范,放下当前版本的向后兼容性。我猜他们永远也不会这么做,虽然我相信,如果编写一个能够自动转换旧Java源码的程序,让它们与假设的新版本兼容,并不是很困难。最后,这就是我决定开始寻找一个更好的JVM兼容语言的原因。
      

  14.   

    话说大的系统也不一定用JAVA或C++啊,比如证券,银行,保险等领域的系统就都是COBOL的
      

  15.   

    小弟自学一年Java,随后迫于生计做了一个关于Symbian项目。如今思前想后还是回来继续深造Java。仔细想想其实语言真的是其次的,关键是你的意识、思想——后来人千万不要被现在五花八门的语言弄得无从下手。永远都不可能存在一种完美的语言——否则全世界人民现在都开始讲英语了。关于语言只有合适不合适,没有好不好!
      

  16.   

    Intger a = new Integer(1024); Intger b = new Integer(1024); 
    boolean test = a < b || a == b || a > b; 
    ==比较的是对象hashCode以及内存地址  
    a和b是两个不同的对象 用==比较 当然是不同的 
    至于用< 和 > 就不用说了 
    所有test肯定是false了
      

  17.   

    java是sun生的,但不是sun养的,很多大公司和软件组织对java的贡献远比sun大。sun被收购了并不影响 java的前途。
      

  18.   


    Java 的发展 就和sun有那么大关系吗??生养不是一个人啊
      

  19.   

    呵呵,java是一编程语言,是一运行时库,是一虚拟机。
    楼主指哪个?如果觉的java语言不爽,可以学scala呀. 
      

  20.   

    语言并不是你发明的,你也没有资格来评论语言的好坏,认为好就用,认为不好就不要用Java 没有没落,Java 也不想当什么王者!
      

  21.   


    这种帖子很有名的,称为 CSDN 的“月经帖”。
      

  22.   

    其实你说的java末落,不是因为java的末落吧,而是因为学java的人越来越多,要求的水平越来越高,知识面越来越广而烦恼吧。
      

  23.   

    虽然楼主分析的很好很深刻
    但作为菜鸟 我还是对JAVA充满兴趣
    多多指教
      

  24.   

    楼主看起来真的对Java很有一番研究和感触了。对于接触java不足4年的我,再比较其他语言(除了c及c++)很难学,入门了也不能想起他语言一样容易上手,当然这些只是个人感觉上的认识。论画面的美化就比不上其他语言,如.net。论执行效率也不是很高,开发效率更慢,学起来也不容易上手。虽然java也在改进,但他积重太多,与其他语言,接口的融合度太差。。再加上你列的那些缺点,当然java开发者也肯定意识到了java的不足,想着改进,但这种改进的速度是狠狠慢的。慢的足可新生一门语言来替代他。
      

  25.   

    java没有没落只是学java的人多啦工作也就一如c++啦
      

  26.   

    又是这个问题..潜水员都上来喷你了..你JAVA会用吗?就像下面的例子,我们就很难理解,变量test为什么是false: 
     Intger a = new Integer(1024); Intger b = new Integer(1024); boolean test = a  < b || a == b || a > b;
    这个问题就是初学者都知道..
    你是上来炒作自己的?
      

  27.   

    你找得出来替代java的语言么?没有就别废话了。更悲哀的是咱们只能讨论别人发明的语言,lz可以发明一种中国人的语言多爽啊:导入包:自己的语言;
    公共的主类 不爽
    {
    主方法{
    系统打印出(“有点灌水了-_-!”);
    }
    }
      

  28.   

    任何事物有兴必有衰,在新新现代语言的冲击下,java的衰老是不可避免的
      

  29.   

    lz不要想当然好不好,太武断喽,这只能说明一个问题,楼主大概不懂java,即然不懂就不要在这里瞎扯,世界这么大,哪轮到你来评论哪种语言不好啊。
      

  30.   

    相比Scala 我更喜欢groovy。
      

  31.   

    当JAVA灭亡的一天也就是微软统一全世界IT江山的那一天,那也是很恐怖的事情,想想看,全世界的操作系统都被垄断于一个私人企业
      

  32.   

    我会的语言是Java和C#,但是我最佩服的是C++,可是我又不会
      

  33.   


    鉴定完毕-----月经贴!楼主,如果你真懂这些,你就不会说:
    我反而觉得,dot net太“专一”了,专门为MS做的,而现在dot net都已经是傻瓜式了,只会不经思考的调用(除了高手外,大部分人都是)
    而Java,有哪些个不需要去看看源码,增长点知识,当然,混饭的也除外!
      

  34.   

    Java至少还能让你吃十年的饭!
      

  35.   


    楼长你对java的了解实在太少了。机顶盒,手机,领域都有java的份额,只能说你是井底蛙。
      

  36.   

    我会的语言只有java,喜欢别人我都不知道怎么喜欢
      

  37.   

    太阳你!你算个叼...不要到java版唧唧歪歪,胡说八道
      

  38.   

    我会JAVA,但我更喜欢C++,因为JAVA编写图形太菜了
      

  39.   

    接分了,谢谢了
    大家休息一下了,放松放松吧!
    童叟无欺 诚信做人 记住了CSDN的朋友可以优惠呀
    [/br]
    http://shop60707837.taobao.com/