社区
Web 开发
帖子详情
java,正在没落的王者
vsking
2009-11-05 10:30:29
一天不如一天了,无语。。。
...全文
782
80
打赏
收藏
java,正在没落的王者
一天不如一天了,无语。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
80 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
旭子
2010-06-13
打赏
举报
回复
[Quote=引用 29 楼 wanli209 的回复:]
Intger a = new Integer(1024); Intger b = new Integer(1024);
boolean test = a < b || a == b || a > b;
==比较的是对象hashCode以及内存地址
a和b是两个不同的对象 用==比较 当然是不同的
至于用 < 和 > 就不用说了
所有test肯定是false了
[/Quote]
以数学的角度去看 这个是矛盾的
ZHBGYJ
2010-05-20
打赏
举报
回复
接分了,谢谢了
大家休息一下了,放松放松吧!
童叟无欺 诚信做人 记住了CSDN的朋友可以优惠呀
[/br]
http://shop60707837.taobao.com/
car-sin
2010-01-05
打赏
举报
回复
我会JAVA,但我更喜欢C++,因为JAVA编写图形太菜了
谁是莫默的呢
2009-12-31
打赏
举报
回复
[Quote=引用 73 楼 wanxiaobin 的回复:]
空洞无力的牢骚,却打上冒似很有水平的标题!
楼主就是属于那种没事找抽型的。
[/Quote]
偶太喜欢哥们这种语气了...顶
谁是莫默的呢
2009-12-31
打赏
举报
回复
[Quote=引用 72 楼 kala197 的回复:]
看来你们公司不是很大 估计就是几室几厅的那种 你怎么不说中兴,化为用的是什么 不是语言的创造者就没资格评论,最多就是你不喜欢 ,不喜欢就不用撒 ,发什么帖子 ,以为的小公司就可以代替中国乃至世界所有的公司了 井底之蛙!!鉴定完毕
[/Quote]
顶!
人家小作坊的,没见过世面...不要计较哈
谁是莫默的呢
2009-12-31
打赏
举报
回复
[Quote=引用 17 楼 vsking 的回复:]
NET开发效率最高,我们公司做网站项目的首选;PHP是做大型网站的首选;JAVA目前用得越来越少。
[/Quote]
太阳你!你算个叼...不要到java版唧唧歪歪,胡说八道
wanxiaobin
2009-11-06
打赏
举报
回复
空洞无力的牢骚,却打上冒似很有水平的标题!
楼主就是属于那种没事找抽型的。
kala197
2009-11-06
打赏
举报
回复
看来你们公司不是很大 估计就是几室几厅的那种 你怎么不说中兴,化为用的是什么 不是语言的创造者就没资格评论,最多就是你不喜欢 ,不喜欢就不用撒 ,发什么帖子 ,以为的小公司就可以代替中国乃至世界所有的公司了 井底之蛙!!鉴定完毕
guodong66
2009-11-06
打赏
举报
回复
[Quote=引用 7 楼 vsking 的回复:]
java虽现在排在前面,但其趋势走向是每况愈下的
[/Quote]
楼长你对java的了解实在太少了。机顶盒,手机,领域都有java的份额,只能说你是井底蛙。
静水s
2009-11-06
打赏
举报
回复
长见识了
ygrant
2009-11-06
打赏
举报
回复
顶一下吧,好歹也是讨论思想的
xuexijava
2009-11-06
打赏
举报
回复
mark
bdceo
2009-11-06
打赏
举报
回复
Java至少还能让你吃十年的饭!
狼里格东
2009-11-06
打赏
举报
回复
[Quote=引用 22 楼 vsking 的回复:]
在我的职业生涯中,我已经编写了无数的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兼容语言的原因。
[/Quote]
鉴定完毕-----月经贴!
楼主,如果你真懂这些,你就不会说:
[Quote]NET开发效率最高,我们公司做网站项目的首选;PHP是做大型网站的首选;JAVA目前用得越来越少。[/Quote]
我反而觉得,dot net太“专一”了,专门为MS做的,而现在dot net都已经是傻瓜式了,只会不经思考的调用(除了高手外,大部分人都是)
而Java,有哪些个不需要去看看源码,增长点知识,当然,混饭的也除外!
礼拜六
2009-11-06
打赏
举报
回复
我会的语言是Java和C#,但是我最佩服的是C++,可是我又不会
Conan君
2009-11-06
打赏
举报
回复
当JAVA灭亡的一天也就是微软统一全世界IT江山的那一天,那也是很恐怖的事情,想想看,全世界的操作系统都被垄断于一个私人企业。。。
xkorey
2009-11-06
打赏
举报
回复
相比Scala 我更喜欢groovy。
Adebayor
2009-11-06
打赏
举报
回复
历史的必然
feng_jyie
2009-11-06
打赏
举报
回复
lz不要想当然好不好,太武断喽,这只能说明一个问题,楼主大概不懂java,即然不懂就不要在这里瞎扯,世界这么大,哪轮到你来评论哪种语言不好啊。
szvsking
2009-11-06
打赏
举报
回复
任何事物有兴必有衰,在新新现代语言的冲击下,java的衰老是不可避免的
加载更多回复(59)
曾经的
Java
IDE Eclipse,它是如何
没落
的?
根据今年 6 月份的一份调查,Eclipse 的使用比例下降至 41%,已低于 Intellij IDEA 的 46%。 1. Eclipse 4 如果有一个时间点标志着 Eclipse 的
没落
,那一定是 Eclipse 4 的发布。 在 Eclipse 3.x 的时代,Eclipse 的发展非常顺利,统治着所有开发工具,但是突然间它却走上了自取灭亡的道路。它犯了重写所有 UI 代码的错误。正如 Joel Spolsky 所言,这是自我毁灭(事实确实如此)。 Eclipse 3.x 是一个速度非常快的,拥有本地外观的 IDE。每一次版本发布都增加了一些实用的功能
CODE大全告诉你
java
是否开始
没落
了
CODE大全告诉你
java
是否开始
没落
了! 22 岁,对于一个技术人来说可谓正当壮年。但对于一门编程语言来说,情况可能又有不同。各类编程语言横空出世,纷战不休,然而 TIOBE 的语言排行榜上,
Java
却露出了明显的颓势。这个老牌的语言,未来会是怎样? 1.写在前面 从 1995 年第一个版本发布到现在,
Java
语言已经在跌宕起伏中走过了 22 年,最新的
Java
版本也已经迭代到 J...
曾经的
Java
开发坏境中的
王者
Eclipse 真的
没落
了么?来一起看看它的兴衰
俗话说,好马配好鞍,才能展现千里马的实力。一名好的开发者,必定要有一套好的开发工具才能打造出最好的产品给用户。要论世界上最好用的 IDE 是哪一种?有人会选择老牌的 Visual Studio 或是 Eclipse;有人会选择一路飙升的 IntelliJ;也有人更偏爱 Google 发布的 Android Studio 等等。 每位开发者按照不同的需求及爱好有各自不同的选择。其中,对
python 的
没落
_
Java
没落
,Python疯涨,编程语言的洗牌到底谁是
王者
!
2019年1月TIOBE排行榜显示,Python由于全球流行度在过去一年中涨幅最高(3.62%),Python一举获得了2018年度编程语言的称号,而在2019年的Q1季度,Python从未令人失望过,一路疯涨,盘踞TIOBE 编程语言榜前3名,且变化指数均呈现正向增长,
Java
开始下滑。编程语言和新兴的热门编程语言 PYPL 指数趋势图事实上,这几年Python一直都被寄予厚望,认为它超越Jav...
曾经的
Java
IDE
王者
Eclipse,它是如何
没落
的?
根据今年 6 月份的一份调查,Eclipse 的使用比例下降至 41%,已低于 Intellij IDEA的 46%。曾经的
Java
IDE
王者
,为何会走到这一步?...
Web 开发
81,091
社区成员
341,718
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章