- 浏览: 849617 次
- 性别:
- 来自: lanzhou
文章分类
最新评论
-
liu346435400:
楼主讲了实话啊,中国程序员的现状,也是只见中国程序员拼死拼活的 ...
中国的程序员为什么这么辛苦 -
qw8226718:
国内ASP.NET下功能比较完善,优化比较好的Spacebui ...
国内外开源sns源码大全 -
dotjar:
敢问兰州的大哥,Prism 现在在12.04LTS上可用么?我 ...
最佳 Ubuntu 下 WebQQ 聊天体验 -
coralsea:
兄弟,卫星通信不是这么简单的,单向接收卫星广播信号不需要太大的 ...
Google 上网 -
txin0814:
我成功安装chrome frame后 在IE地址栏前加上cf: ...
IE中使用Google Chrome Frame运行HTML 5
A favorite hobby-horse among various programming-related communities is to talk about why "Java is dead", and further, that programmers working in the Java ecosystem should really look for greener pastures elsewhere. You see these sorts of posts pop up on proggit, for example, oftenenough for it to get old. That's a lot of hot air, with plenty blowing in the other direction from various folks that have been pushing hard for significant improvements and changes to Java. Both sides are wrong, though, because as a result of its success and a series of historical accidents: The JVM is probably one of the most vibrant platforms for developing new programming languages there is, in part because of the status of Java-the-language. First, let's settle the premise. In comments on one of his recent blog posts, Joe Darcy, one of the fellows the heads up Sun's management of the JVM and JDK (I'm not sure of his exact title and portfolio), said a couple of key things about the never-ending saga regarding closures in Java: There are millions upon millions of Java developers who would have to learn about closures if they were added in the platform. ...there is far from unanimity in the Java community on the underlying choice of whether or not closures would be an appropriate language change for Java at this time. OK, there it is, closures are never going to be added to the Java language. Done, and done. And if closures aren't going in, then you can surely bet that other things aren't going to make it, either. To further make the point, Joe commented on an earlier blog post of his here 1 , saying in reference to a question about why the Java standard libraries don't slough off deprecated APIs: To date, we have valued continued binary compatibility with code calling the deprecated elements more than cleaning up the API. This sort of stuff pisses a lot of people off, and leads others to propose mildly absurd things IMO,like forking the Java language into "stable" and "experimental" versions. This a lot of wasted effort. It seems that Sun decided long ago, through pressure from its customers and developers, that compatibility is more important than innovating at the language level. With that, managing Java and the JDK became more an exercise in stewardship than anything else. The quotes above from an authoritative source are proof-positive that this is the case. That may make the Java language dead with regard to features, but it's hardly useless – it's simply transitioned to be the stable "systems language" for the JVM that a large swath of programmers (who Sun likely correctly identifies as being uninterested in things like closures, syntactic improvements, etc. etc.) happen to use for applications as well. Trading off "progress" for stability bestows upon Java at least two characteristics that are shared by other systems languages: A side effect of this is that the JVM is a very fertile spot for new(er) languages, where language implementers don't have to worry about their building blocks being taken away or changed radically from year to year 2 . At the same time, the JVM itself has been getting tweaked and tuned heavily under the covers to support non-Java languages, not the least of which is Sun's JavaFX, their entry into the post-Java JVM language fray 3 . So, you want your fork of Java that pushes boundaries?They are many and plentiful, so go choose one, already. The upshot of all this is that it's more likely than not that over the course of the coming years, your life (and quite likely your professional life as well, if you're involved in software) will come to rely upon Java, the JVM behind it, and many different other language stacks built on one or both of those technologies. Of course, interop between these languages is a concern: only APIs matching Java's binary signatures are accessible by all languages, there's no standard interface for closures, there's no standard (sane) numeric tower, etc. etc. These things are frustrating if one happens to be working in a polyglot environment, but I've no doubt that necessity will draw the larger players in the JVM language space together to establish certain baselines to ensure interoperability. In the end, we might have all been better off if the current state of affairs had arrived years ago. A steady drip, drip, drip of Java language improvements serves only to keep developers tied around what is functionally a frozen language, and away from superior alternatives (on the same JVM platform!) if they're so inclined to look up from their work. Since the state of play vis á vis Java-the-language is clear, maybe those that care so deeply about programming language productivity, innovation, and progress can set about enjoying the advantages of the future that Java has ensured for us all.
发表评论
-
为什么中国出不了扎克伯格
2010-03-12 08:01 1115他们已基本失去成为互 ... -
不会编程的程序员
2010-03-06 12:39 920我想这让人难以置信, ... -
让代码更美:10大编程字体
2010-01-21 13:36 1735日复一日的编写代码, ... -
Everything you need to know about Android 2.0
2009-11-07 21:03 1079Android 2.0 (formerly codenamed ... -
Linux: still better for coding
2009-11-05 08:01 825Something like one year ago I s ... -
Top 10 Programming Fonts
2009-11-01 09:20 1582I’m a typeface geek, and when i ... -
Speed Up and Back Up Your Rooted Android Phone
2009-10-31 15:16 1065If you've rooted your Android p ... -
Five Favorite Web Applications of Designers
2009-10-18 08:36 929Webapps –compared to their des ... -
The Best Programming Language for a Lean Startup
2009-10-18 08:31 1196Think arguments between religio ... -
5 Excuses Bad Programmers Make
2009-10-16 16:51 707It’s a common problem, there’s ... -
How to Create a Twitter Feed on Your Web Site
2009-10-08 08:50 1007Twitter has quickly become one ... -
How NOT to test that mysqld is alive
2009-10-06 09:35 883I had a call from a new custo ... -
CodeThatDocumentsItselfSoWellItDoesNotNeedComments
2009-10-06 07:56 709“When I first met the lead de ... -
The Evolution of a Programmer
2009-10-06 07:54 700High School/Jr.High 10 PRI ... -
将Web入侵消灭在萌芽之中——预防SQL注入
2009-10-05 08:38 1059国家互联网应急中心CN-S ... -
阿里要走102年 阿里的工程师能走多远?
2009-10-04 08:46 671很高兴看到阿里云的 ... -
支持云应用程序服务的PHP API
2009-10-03 08:14 1014自称“PHP公司”的Zend Technologies发起 ... -
程序员需要知道的97件事
2009-10-02 08:24 1434继架构师需要知道的97件事(参看InfoQ此前的报道)之后,该 ... -
Google Wave: There Will Be Backlash
2009-10-01 08:11 741Have you gotten your Google W ... -
A Letter To The Programmer
2009-09-30 08:25 840This is a letter that I would n ...
相关推荐
It explains everything you need to know about Java servlet programming, from start to finish. The first five chapters cover the basics: what servlets are, what they do, and how they work. The ...
Originally I authored Dante in Pause, the project is now dead and I decided to open source it. This is the very first release of Dante, the api will (most likely) change for the better with successive...
### 通信物理层(PHY)是否已成过去? #### 引言 无线通信技术自诞生以来,便被视为具有划时代意义的重要技术,被冠以诸如“无处不在”、“广泛存在”、“根本性”、“范式转变”以及“革命性”的标签。...
此外,本文还提出了一个名为KAISER(Kernel Address Isolation to have Side-channels Effectively Removed)的新系统,它克服了x86架构的限制,提供了实际的内核地址隔离功能,从而保护内核地址信息不被泄露。...
XML is far from a dead technology, so it is important to learn how best to use it in your applications when the need arises. What You Will Learn Gain the essentials of XML for C# development Read XML...
Java APIs, Extensions and Libraries_With JavaFX, JDBC, jmod, jlink, Networking, and the Process API-Apress(2018).pdf...It is my sincere hope that this edition of the book will help you learn Java better.
Chapter 3, Motion for the Biped, talks about how once you have the platform built, you'll need to program it to walk, wave, play dead, or perform any number of neat motion segments so that you can ...
SEO 2018 is now updated covering the latest changes to Google's algorithm, and walks you through major updates and how to use them to your advantage. This book also reveals industry secrets about ...
### Java:进化死胡同 #### 概述与背景 在一篇名为《Java:进化死胡同》的文章中,作者布鲁斯·埃克尔(Bruce Eckel)深入探讨了Java语言当前面临的一些挑战及其未来发展的可能性。文章发布于2008年1月3日,正值...
Once the program is running, it's dead simple. Select Open, pick a .bib file, then select Save, enter filename (.xml), exit. If there are bugs in the BibTeX file, or if some things can't be converted ...
android-image-filter some android image filters in some filter, I use NDK to implement to make it more ...It is dead simple, you can see magic in the following code: Bitmap newBitmap = BitmapFilt
If such file already exists Jad asks if you want to overwrite it. Option -o allows overwriting without confirmations. You can omit .class extension and/or use wildcards in the names of input files. ...
Richard Stevens TCP/IP illustrated is one of the best books you can ever buy to understand not only TCP/IP but also other fundamental protocols like ARP, DHCP, SMTP etc. The word 'Illustrated' is ...
信息安全和数据安全是信息技术领域中的核心议题,它们在保障个人、企业乃至国家安全方面发挥着至关重要的作用。NTLM协议(NT LAN Manager)是一种广泛应用于Windows系统的身份验证机制,但由于其设计上的缺陷,经常...
in order to overcome the practical zero of the current ambiguity of the system is proposed based on the two-phase stationary coordinate system under the feedforward dead-time compensation method....
Not only does it show invalid addresses, but it can also remove them from the source list, creating a separate lists of bad addresses. ODBC support is included allowing FEV to work with any database ...
描述 "Java code is required to complete the test and test the software" 明确指出这个项目包含编写和测试Java代码的任务。标签 "java WalkingDead" 进一步巩固了这个观点,暗示可能是开发或分析与《行尸走肉》...