﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Jiangshachina-随笔分类-JavaOne</title><link>http://www.blogjava.net/jiangshachina/category/31871.html</link><description>同是Java爱好者，相逢何必曾相识！&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;a cup of Java, cheers!</description><language>zh-cn</language><lastBuildDate>Sun, 07 Oct 2012 09:27:18 GMT</lastBuildDate><pubDate>Sun, 07 Oct 2012 09:27:18 GMT</pubDate><ttl>60</ttl><item><title>JavaOne Strategy Keynote 2012(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2012/10/06/389103.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Sat, 06 Oct 2012 11:26:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2012/10/06/389103.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/389103.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2012/10/06/389103.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/389103.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/389103.html</trackback:ping><description><![CDATA[<span style="font-size: 10pt;"> </span><div><div align="center"><strong><span style="font-size: 14pt;">JavaOne Strategy Keynote 2012</span></strong></div><span style="font-size: 10pt;">本文是Oracle官方针对今年JavaOne大会战略主旨演讲的一篇<a href="https://blogs.oracle.com/javaone/entry/javaone_2012_sunday_strategy_keynote">博客</a>，总结了过去一年中Java在不同领域的进展，并展望了其在今后一段时期内的计划。(2012.10.06最后更新)</span><br /><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 周日在Masonic Auditorium举行的战略主旨演讲中，中间件与Java开发的执行副主裁Hasan Rizvi阐述了今年JavaOne的主题：创造Java的未来。这意味着作为最流行的，最完备的，最有成效的，最安全的且最富创新的开发平台，Java仍继续扮演着这一角色。他说到："你们中的许多人已将你们的生意与职业投资到了Java之上，我们也已将我们的生意投资到了Java之上"。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Rizvi详述了他们认为的Java成功的三个至关重要的因素：技术创新，社区参与，以及Oracle的领导/管理(臭屁*_*)。他提供了过去一年中发生在上述三个方面中的实例：OS X与Linux ARM对Java SE的支持；年底对JavaFX的开源；Java Embedded Suite 7.0中间件平台的发布；Java EE端多个版本的发布。JCP进程还在继续，有了新的JSR活动，去年以来，JUG的参与度与增加了25%。同时，Oracle继续它在技术与社区发展/拓展方面的承诺--去年在世界不同的地方有四场区域性的JavaOne会议，以及Java Magazine的发布，该杂志目前有超过12万的注册用户。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 随后，Java SE开发的副总裁Georges Saab回顾了Java SE 7的特性--这是Oracle管理Java SE以来发布的第一个主版本，它包含差不多每月发布的更新，这些更新修复了数以百计的缺陷，还有性能提升与新特性。Saab指出开发者，独立软件提供商，以及服务提供商们已经很快地适应了这个平台。他也特别提到Oracle的全Fusion中间件产品线已受Java SE 7的支持。支持Java SE 7的平台也有所增加--从Windows，Linux，Solaris到OS X，Linux ARM，以及新兴的ARM微服务器市场。Saab谈到："去年，新增的支持Java的平台数就与过去十年中支持Java的平台数相同"。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Saab也探讨了即将到来的JDK 8--包括Lambda项目，Nashorn项目(一个运行在JVM的现代JavaScript实现)，及其它。他特别提到，Nashorn的功能已在内部应用于NetBeans 7.3，并宣称他们将把这一实现捐献给OpenJDK。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Java Client，ME与Card的副总裁Nandini Ramani讨论了与JavaFX 2.0的最新消息--针对Windows，OS X与Linux的发布，FX Scene Builder工具的发布，NetBeans 7.3中的JavaFX WebView组件，以及OpenJDK中的OpenJFX组件。Nandini宣布自周日起可以下载针对Linux ARM的JavaFX(开发者预览版)，针对Linux的Scene Builder也一样可以。她提醒到，针对明年将发布的JDK 8，JavaFX将支持3D，也会支持第三方组件的集成。Navis高级软件工程师Avinder Brar与Canoo院士Dierk Konig随后登台演示了JavaFX的相关特性，该演示程序利用了Canoo刚刚开源的Dolphin技术，其特性丰富，还有不少的动画，是一个实时的货品管理应用。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Saab还探讨了Java SE 9及更远的未来--Jigsaw模块化，针对与OSGi协作遥Penrose项目，提升Java在云中的多租期(multi-tenancy)，以及Sumatra项目。HSA基金会主席与AMD院士探讨了异构计算平台，这种平台将CPU与并行处理器GPU整合到单个硅片中并共享内存，这是一项受诸如高清视频，面部识别和云工作量等高级功能驱动的硬件技术。Sumatra是OpenJDK中的一个项目，它的目的是将Java引领到异构平台中--针对那些高级应用与平台，硬件与软件专家们一同去修改JVM。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 接下来，Ramani讨论了Java在被称之为"下一代IT革命"嵌入式领域--"Internet"和M2M--中的近况，Java被认为是这一生态系统中的理想技术。上周，Oracle发布了Java ME Embedded 3.2(针对微控制器与低功耗器件)，以及Java Embedded Suite 7.0(一个基于Java SE 7的中间件组件)。Cinterion的战略与市场副总裁探讨了其公司在M2M方面对Java的使用，以及他们最新发布的EHS5，这是世界上最小的可接入3G的M2M模块，运行Java ME Embedded。Hansmaan解释道，Java为他们提供了针对诸多外围设备创建一种"易用的，可伸缩的，一致的，端对端的层"。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Royal Canadian Mint的首席账务官Marc Brule也探讨了JavaCard在其国家的MintChip电子现金技术中的绝妙应用--该技术可在智能手机，USB设备，计算机，平板电脑或云中进行部署。在这其中，Ramani鼓励开发者们下载并尝试最新的Java Embedded版本。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Fusion Middleware Development与Java EE开发的副总裁Cameron Purdy总结了企业级领域最新的开发与声明--Java EE 6中更好的开发者生产率(EE 7中还会更好)，平台、提供商之间，甚至云对云的移植性。Java EE 7 SDK的早期版本已能下载了--在GlassFish 4中--其中包含有WebSocket支持，更好的JSON支持，及其它。该版本的最终发布计划是在2013年4月。Nike的用户数字化技术高级总监Nicole Otto探究了其公司受企业级生态系统驱动的Java技术，该生态系统针对所有的体育用品，包括NikeFule加速计量腕带。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 在展望Java EE 7时，Purdy提到了针对EE 8的NoSQL数据库功能，并发工具集(可能在EE 7中)，EE 7和EE 8中的一些Avatar项目，云上的多租期(multi-tenancy)，对SaaS应用的支持，及其它。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 最后，Rizvi介绍出海洋学家Robert Ballard博士，以及National Geographic的Explorer-in-Residence计划--这是Oracle与National Geographic Society慈善关系中的一部分，他们一同资助了K-12海洋科学教育与对话。Ballard因发现铁达尼号的残骸而广为人知，他提供了一段有趣的视频来概述了这种用于诸如深海探索的尖端技术。注意，在他早年，高带宽勘探意味着你必须进入潜水艇，然后"把你的脸贴在窗户上"。现在则是使用在远程进行操控的远程呈现技术--"我把我的Hercules船想像成一个纳美人。当潜入海中，我真地放飞了灵魂"。使用高带宽卫星链接，如此美妙的探索就能出现在智能手机，笔记本电脑或其它平台上了。</span><br /><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; Ballard的团队会与该探索计划中的教育者们一同定期地为学校以及世界上188个国家提供实况与编程服务，这些最棒的技术将激发着下一代的科学家与探索者们！</span></div><img src ="http://www.blogjava.net/jiangshachina/aggbug/389103.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2012-10-06 19:26 <a href="http://www.blogjava.net/jiangshachina/archive/2012/10/06/389103.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Duke's Choice Award 2012(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2012/10/03/388998.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Wed, 03 Oct 2012 15:08:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2012/10/03/388998.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/388998.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2012/10/03/388998.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/388998.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/388998.html</trackback:ping><description><![CDATA[<span style="font-size: 10pt;"> </span><div><div align="center"><span style="font-size: 14pt;">Duke's Choice Award 2012</span></div><span style="font-size: 10pt;">本年度的<a href="https://blogs.oracle.com/javaone/entry/duke_s_choice_award_ceremony">Duke's Choice Award</a>已在JavaOne 2012大会中颁出，值得提及的是，Java之父James Gosling目前所工作的公司也获得了该项大奖。(2012.10.05最后更新)</span><br /><br /><span style="font-size: 10pt;">在周日晚上JavaOne主旨演讲之后，2012年度Duke's Choice Award获得者以及他们创造性的Java技术与Java社区贡献被授予了各自的荣誉。Java技术推广部门总监Sharat Chander出席了颁奖礼。在候选名单的提交与最终获奖者的选择方面都是社区直接参与的，这正体现了我们是如何在Java社区中促进对创新的发掘。</span><br /><br /><strong><span style="font-size: 10pt;"></span></strong><a href="http://hadoop.apache.org/"><strong><span style="font-size: 12pt;">Apache软件基金会</span></strong></a><br /><span style="font-size: 10pt;">Apache软件基金会的Hadoop项目由Java语言写成，它为跨计算机集群的分布式大数据集处理提供了一个框架，这个集群的规模从几个服务器到数千台机器不等。对大数据池的处理使机构能更好地理解并改进他们的业务。</span><br /><br /><a href="http://agrosense.org/"><strong><span style="font-size: 12pt;">AgroSense项目</span></strong></a><br /><span style="font-size: 10pt;">AgroSense是一个由Java和NetBeans平台构建的开源耕作信息管理系统，它的目标是改进耕作方法以养活这个饥饿的世界。AgroSense使农场主，农业综合企业，供应商及其他人能够开发模块化的应用，通过用底层地NetBeans框架，这些应用能方便地进行信息交换。</span><br /><br /><a href="http://jduchess.org/"><strong><span style="font-size: 12pt;">JDuchess</span></strong></a><br /><span style="font-size: 10pt;">与大多数Java用户组(JUG)关注特定地域不同，JDuchess关注于在世界范围的Java社区中培养女性的参与度。该组织在60个国家有超过500个成员，它为女性进行相互联系并参与到Java社区的各个方面提供了一个平台。</span><br /><br /><a href="http://jelastic.com/"><strong><span style="font-size: 12pt;">Jelastic, Inc.</span></strong></a><br /><span style="font-size: 10pt;">向现有Java应用移植到云中是一项令人望而生畏的工作，但Jelastic开始这么干了。Jelastic提供了第一个全Java的平台即服务(PaaS)应用，它允许已有的Java应用在不需要修改或锁定代码的情况就能部署到云中。</span><br /><br /><a href="http://www.liquidr.com/"><strong><span style="font-size: 12pt;">Liquid Robotics</span></strong></a><br /><span style="font-size: 10pt;">Liquid Robotics是一个海洋数据服务提供商，它的Wave Glider技术能够为政府，科研和商业应用收集世界海洋的信息。特别之处是"Java之父"James Gosling是该公司的首席软件架构师。</span><br /><br /><a href="http://londonjavacommunity.wordpress.com/tag/london-java-community/"><strong><span style="font-size: 12pt;">London Java Community</span></strong></a><br /><span style="font-size: 10pt;">今年第二个获得Duke's Choice Award的用户组是伦敦Java社区(LJC)，它的用户在OpenJDK，Java社区进程(JCP)及全球其它Java社区中的贡献使其获得该奖项。</span><br /><br /><a href="http://www.nato.int/cps/en/natolive/index.htm"><strong><span style="font-size: 12pt;">NATO</span></strong></a><br /><span style="font-size: 10pt;">前所未有的社区选择奖给了NATO使用的MASE Integrated Console Environment(MICE)。由Java和NetBeans平台构建的MICE为指挥防空与战场空间处理提供了一个高性能的可视化环境。</span><br /><br /><strong><span style="font-size: 12pt;"></span></strong><a href="http://www.parleys.com/"><strong><span style="font-size: 12pt;">Parleys.com</span></strong></a><br /><span style="font-size: 10pt;">位于比利时布鲁塞尔的E-learning方面的专家Parleys.com使用Java技术将在线班级与完全的IT会议带入到桌面电脑，笔记本电脑，平板电脑及移动设备中。Parleys.com为超过80万独立访问者主持了超过1700场会议--包括Devoxx和JavaOne。</span><br /><br /><a href="http://www.studentnokiadeveloper.com/"><strong><span style="font-size: 12pt;">Student Nokia Developer Group</span></strong></a><br /><span style="font-size: 10pt;">今年的学生奖获得者Ram Kashyap,是Nokia Student Network的创始人与总裁，在今年3-4月期<a href="http://www.oraclejavamagazine-digital.com/javamagazine/20120304">Java Magazine</a>中的"新Java开发者"中有介绍。从创办该项目以来，Ram维护着一个来自于印度班加罗尔PES技术学院的大受欢迎的应用，该应用工作于一个Java移动环境并在Java ME方面对学生们进行培训。</span><br /><a href="http://www.unhcr.org/cgi-bin/texis/vtx/home"><strong><br /><span style="font-size: 12pt;">United Nations High Commissioner for Refugees</span></strong></a><br /><span style="font-size: 10pt;">联合国难民高级事务专员(UNHCR)处在世界各地从内战到自然灾害等危机的前沿。为了有助于促进人道主义救济使命，UNHCR已经开发了一个基于NetBeans平台的轻客户端Java应用。其中的Level One注册工具使UNHCR能够收集关于难民的数量，以及他们的饮用水，食品，住房，健康和其它必要信息，同时与多个来源的地理信息结合在一起，这使得UNHCR能够发出该地区所需的适当类型与数量的援助。</span></div><img src ="http://www.blogjava.net/jiangshachina/aggbug/388998.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2012-10-03 23:08 <a href="http://www.blogjava.net/jiangshachina/archive/2012/10/03/388998.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tony Printezis和Raghavan Srinivas插话Java的未来(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2010/09/22/332661.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Wed, 22 Sep 2010 14:24:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2010/09/22/332661.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/332661.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2010/09/22/332661.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/332661.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/332661.html</trackback:ping><description><![CDATA[<div align="center"><span style="font-size: 10pt;"><strong><span style="font-size: 14pt;">Tony Printezis和Raghavan Srinivas插话Java的未来</span></strong></span><br />
</div>
<span style="font-size: 10pt;">这是Oracle<a href="http://blogs.oracle.com/javaone/">官方JavaOne博客</a>中的<a href="http://blogs.oracle.com/javaone/2010/09/rock_stars_tony_printezis_and_raghavan_srinivas_chime_in_on_the_future_of_java.html">一篇</a>，介绍了两位Java Rock Start--Tony Printezis和Raghavan Srinivas对他们所感兴Java主题的看法。(2010.09.22)<br />
<br />
我逮到了两个JavaOne Rock Start，Oracle的Tony Printezis，以及以不断探索新知识而闻名的Java技术布道者Raghavan Srinivas，让他们谈谈关于Java和JavaOne的事儿。<br />
<br />
我向Printezis，垃圾收集和Java方面的领导性专家，询问今年的JavaOne如何。<br />
"对于JavaOne而言这是重要的一年，它有了一个新的九月时间点，三个新会场，一个新主人。但尽管有了这些变化，它仍然保持了早前的宗旨，即让人们喜欢从该领域的顶级专家那儿学习Java平台的最新开发技术。所以，尽管有了这些改变，我坚信与会者们会发现会议内容仍如往年那样富有教育性的，有用的，且是高质量的。另外，JavaOne与OpenWorld共用同一会场也将给予会者们机会去利用这两个活动，这会使他们在San Francisco的旅程更有价值。"<br />
<br />
那么Java平台的现状如何？<br />
"很明显地，2010年是有重大变故的一年，这不可避免地会影响到我们每天的工作与进步。然而，Oracle已经承诺会继续发展和投资Java平台。所以，尽管有过去数月中我们所遇到的混乱情况，我们仍会像以前那般创劲十足地继续创新和改进Java平台。"<br />
<br />
Java开发者应该关心的趋势是什么？<br />
"对于使其它语言能运行JVM上的工作我都感兴趣。这些语言都能方便地与Java进行交互(毕竟都是Java字节码！)，这一事实为开发者提供了许多有趣的机会。使用最适合的语言去编写系统的每一个部分，并且所有部分都运行在同一个最高水准的JVM上，也使得在跨语言边界时能够做到最好，这样不是很好吗？"<br />
<br />
我问到他在周四的议程，"垃圾收集终结者"，这是一个很受欢迎的主题，会占用整个上午。在下午，他还会提供另一个议程。<br />
"多年来，我一直在向顾客和开发者们介绍GC。我当时很快就有这样的印象，很多伙计们对GC能做什么和不能做什么存在着误解。事实上，我们已收到许多建议GC进行改进的要求，但这些要求毫无道理。所以，我和我的合作演讲者John Coomes就想给出一个演讲来帮助听众们去澄清如此多的误解。"<br />
<br />
Tony也给出了一个关于在HotSport Java虚拟机中进行性能调优的议题<br />
"这是我和Charlie Hunt在去年JavaOne中相同主题的后续演讲。我们在开始这个演讲时就声明'GC调优是一种艺术，我们不能给出一种通用的秘方来教你怎么去做。'今年我们还将这么做。我们提出了一个方法学，应该可以适应很多不同的情况。我们也收到了来自于Jon Masamitsu，GC组的技术领导，的许多有用信息。这需要大量的工作，所以我希望能向大家展示它。希望听众们会发现这个演讲会很有帮助，也希望这个演讲像去年那样受欢迎。"<br />
<br />
Q：你想看到GC在未来如何发展？<br />
A：更大的内存，更佳的延迟情况，更多的垃圾！<br />
<br />
<strong>关于垃圾收集的八个神话</strong><br />
出于好奇心，此处有一个GC神话的列表，Tony将在周四曝出来：<br />
<br />
&nbsp;&nbsp; 1. 引用计数GC将解决我所有的延迟问题。<br />
&nbsp;&nbsp; 2. Malloc/free将总是比GC表现的更好些。<br />
&nbsp;&nbsp; 3. 一旦对象变得不可及，就应该立即调用finallizer方法。<br />
&nbsp;&nbsp; 4. 垃圾收集将消除所有的内存泄露。<br />
&nbsp;&nbsp; 5. 由于我知道某些重要对象已不及了，如果我显式地消除分配给这些对象的内在，生活将会变得更好些。<br />
&nbsp;&nbsp; 6. GC既可以给我非常高的吞吐量，也能给我非常低的潜伏期。<br />
&nbsp;&nbsp; 7. 在应用程序的关键部分我需要使GC停止工作。<br />
&nbsp;&nbsp; 8. 在系统中，我能使用GC所编写的任何东西，我也可以使用malloc/free去编写。<br />
<br />
Raghavan Srinivas，Sun Microsystems公司中多年的Java技术布道者，在关于技术的发展方向方面有些东西要说。<br />
我让他告诉我们下一个大的技术革新会是什么。<br />
"Hadoop和NoSQL运动。Hadoop是一个Apache开源项目，它基于代码的转移及数据的本地化，使你不必处理数据延迟。当要处理当今企业生产和消费的TB甚至PB级数据时，这会很有帮助。它为了开发者们提供了一个非常简单的基于Map/Reduce的范式，并且这个框架隐藏了分布式数据加载，数据复制等等方面的大部分底层复杂度。如果你熟悉Peter Deutsh的计算谬论，你就能发现这些谬论已经困扰着许多分布式系统了。新的框架解决了许多这样的问题。对于云计算，这是一个极好的基础架构。公司，无论大小，已经采用了这些技术，而最初的热情让我记住了Java。"<br />
<br />
<strong><span style="color: red;"><span style="font-size: 12pt;">祝大家中秋佳节愉快:-)</span></span></strong><br />
</span>
<img src ="http://www.blogjava.net/jiangshachina/aggbug/332661.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2010-09-22 22:24 <a href="http://www.blogjava.net/jiangshachina/archive/2010/09/22/332661.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java Store, Q&amp;A(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2009/07/05/285528.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Sun, 05 Jul 2009 01:48:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2009/07/05/285528.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/285528.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2009/07/05/285528.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/285528.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/285528.html</trackback:ping><description><![CDATA[<div align="center"><span style="font-size: 10pt;"><strong><span style="font-size: 14pt;"><a href="http://weblogs.java.net/blog/joshy/archive/2009/06/the_java_store.html">Java Store, Q&amp;A</a></span></strong></span><br />
</div>
<span style="font-size: 10pt;">在今年的JavaOne中，比较重要的议题之一就是Java应用商店。目前还没机会亲身体会一下这个商店，但我至少认为Java应用商店为广大Java程序员提供了一个新的展示自我的平台。Please show yourself! (2009.07.05最后更新)<br />
<br />
Java Store是JavaOne中最重大的消息之一。我格外为之骄傲，因为在过去的几个月中我一直秘密地为其工作。由于这一消息，我收到了一大堆关于该商店的问题，以及如何将它与Java生态系统中的其它部分相关联。出于对已极佳的<a href="http://java.sun.com/warehouse/reference/faq/">FAQ</a>的补充，我想应该再回答一些问题。<br />
<strong><br />
简约概括一下你所宣布的消息</strong><br />
我们已经发布了Java Store的私有Beta版，是一个桌面的客户端应用，它允许大家浏览并购买桌面Java应用；还有一个Java仓库的开放Beta版，为了分发应用程序，开发者们可将这些应用程序上传到这个仓库中。现在你就可以登录并浓度一下这个<a href="http://www.java.com/en/store/index.jsp">商店</a>和<a href="http://java.sun.com/warehouse/">仓库</a>。目前，这个商店和仓库只针对美国用户，很快将有更多的国家能够使用。<br />
<br />
<strong>我可以使用除JavaFX之外的其它语言来做用于Java Store的程序吗？</strong><br />
是的！不仅仅是Java和JavaFX，所有基于JVM的语言都是允许的。记住，最终用户并不关心你的应用是用什么语言写的。他们只关心你所做的应用是有用的，看起来和用起来都很好。<br />
<br />
<strong>商店中的应用程序有哪些限制？</strong><br />
查看<a href="http://java.sun.com/warehouse/reference/faq/">FAQ</a>，可以得到全部的细节，但简要的回答是：任何的JVM语句；必须面向消费者；(目前)小于50M；必须是未签名，或使用有效认证的签名。在该商店商用之前，所有的应用都是免费的，商用之后你就需要付费。此处包含的细节很少，但这些都是基本的。<br />
<br />
<strong>何时才允许我贩卖应用程序？</strong><br />
我们将尽快。商店还未开张。但最终，你不会拥有一个货架空空如也的商店。这就是为什么我们要给你们，开发者，时间去准备好你们的应用。当我们向商用开放这个商店时，你就能够标上价格并开始售卖了。<br />
<br />
<strong>顾客将如何找到我的应用程序？</strong><br />
你在JavaOne大会上看到的桌面客户端只是第一个版本。我们已在努力工作，向商店加上新的特性，这将使得顾客们找到你的应用。将有诸如查找，过滤，排序和评论之类的新特性。最后，Java Store将会随Java发布，这就使得你的应用能被近百万人发现。<br />
<br />
<strong>移动和TV应用将会怎样？</strong><br />
Java Store实际包含两个方面。店面是一个桌面客户端程序，它使你能够购买桌面应用。还有一个Java Warehouse，这是你，即开发者，存放待售应用程序的地方。在未来，还会增加针对电视和移动应用的店面，可能会carrier branded。你所存放应用程序的Java Warehouse将为所有的这些店面提供服务。桌面应用只是令人激动的第一步罢了。<br />
<br />
<strong>现在商店里都哪些应用了？他们来自于何处？</strong><br />
我们与许多伙伴公司一同工作为这个商店构建新的应用，以及修改已有的应用程序。我个人的最爱是Astronomy Picture of the Day，由位于俄勒冈州Eugene的一个名为<a href="http://www.concentricsky.com/">Concentric Sky</a>的公司创建的。这个程序与NASA的太空图片相连接，能使你浏览以前的图片，阅读图片说明，甚至还能使用Google Translate将文本翻译成其它语言。请看Concentric Sky的CEO在他们的博客中<a href="http://www.concentricsky.com/">对Java Store和JavaFX的描述</a>。<br />
<br />
<strong>为什么开发者们不能在其它国家登录？什么时候才能允许我们在其它国家贩卖应用程序？</strong><br />
我们将尽可能快的在其它国家开放这个商店。国际贸易要比你所想象的还要复杂的多(作为一个工程师，我感到十分的吃惊)。每个国家在税率，私有权和商业方面都有不同的法规。现在我们有法律和商业方面的伙记们在这些问题而工作。当前，我们计划在2010年的早些时候实现这一目标，但是如果我们能做得更快些，那一定会告诉你。<br />
<br />
为了使消息更清晰，我们让Jeet Kaul，Java的高管之一，作一些解释：(点击观看) <br />
<a href="http://blogs.sun.com/webmink/entry/tweetswoop_us_only_java_store"><img src="http://weblogs.java.net/blog/joshy/javastore/SafariScreenSnapz024.png" alt="SafariScreenSnapz024.png" border="0" width="418" height="239" /></a><br />
如果你有任何关于Java Store的问题，请发邮件给我，或者在我们的反馈页面中提交你的评论。<br />
<br />
</span>
<img src ="http://www.blogjava.net/jiangshachina/aggbug/285528.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2009-07-05 09:48 <a href="http://www.blogjava.net/jiangshachina/archive/2009/07/05/285528.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Duke's Choice Award 2009(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2009/06/04/280026.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Thu, 04 Jun 2009 08:42:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2009/06/04/280026.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/280026.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2009/06/04/280026.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/280026.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/280026.html</trackback:ping><description><![CDATA[<div align="center"><strong><span style="font-size: 10pt;"><span style="font-size: 14pt;">Duke's Choice Award 2009</span></span></strong><br />
</div>
<span style="font-size: 10pt;">在一年一度的JavaOne中，总会选出几个当年度最具代表性、创造性的Java应用，今年当然也不能例外。就在昨天，2009年度的<a href="http://java.sun.com/javaone/2009/articles/2009dukeschoiceawards.jsp">Duke's Choice Award</a>新鲜出炉了，我相信其中的一些应用大家也会很感兴趣的。(2009.06.08最后更新)<br />
<br />
每年，Duke's Choice Award委员会将邀请Java社区的成员提名得到认可的最好且最具创新性的<a href="http://java.sun.com/">Java</a>应用。委员会的领导小组--包括James Gosling，为人熟知的Java技术之父--会根据这些基于Java的应用和服务的创造性来选出其中的优胜者。现在在它的第七个年头里，委员会认可了2009年度Duke's Choice Award的胜出者们，由于他们酷炫的工具，技术和产品。<br />
今年，该委员会在如下领域中给出了10项大奖：<br />
# 终身成就奖：金Duke奖<br />
# 最佳桌面游戏<br />
# Java无处不在!<br />
# Java技术在开发者解决方案中<br />
# Java技术在教育领域中<br />
# Java技术在环境领域中<br />
# Java技术在网络解决方案中<br />
# Java技术工具<br />
<strong><br />
终身成就奖：金Duke奖<br />
<a href="http://www.lincvolt.com/">LincVolt, Perrone Robotics</a></strong>
<br />
使用新方法来添加燃料，19.5英尺长，2.5吨重的1959款林肯大陆敞篷汽车已处于创新的领导地位了。LincVolt轿车寻找清洁的汽车动力技术，并完全不需要在路边加油。这项令人鼓舞的项目由一些最受人尊敬的技术，包括Java技术，所支撑。Perrone Robotics是这项空前构想背后的助力，该公司致力于利用开源技术创建跨越平台和软件的机器人技术。可在JavaOne的<a href="http://java.sun.com/javaone/2009/activities.jsp#Playground">Change (Y)our World Playground</a>中观看LincVolt。<br />
<br />
<strong>最佳桌面游戏</strong><br />
<strong><a href="http://www.jagex.com/">Runescape, Jagex, Ltd.</a></strong><br />
Jagex, Ldt.已成为在线视频游戏行业中的领导者，它创建了世界上最大的大型多人在线游戏(MMOG)之一，Runescape。从2001该项目启动开始，Runescape已成为全球最大的MMOG之一，并完成了一个支持高清游戏的引擎。同时，Jagex, Ltd.还启动了游戏门户网站<a href="http://www.funorb.com/">FunOrb.com</a>，该站点为所有类型的客户提供奇妙的基于Java技术的游戏。<br />
<br />
<strong>Java无处不在!<br />
</strong>
<a href="http://www.terracotta.org/web/display/orgsite/Whats+New+Terracotta+3.0"><strong>Terracotta 3.0</strong> </a><br />
Terracotta 3.0为将基于Java的应用程序部署到所需众多的计算机中提供了一种廉价且方便的方法，该方法同时确保了高可用性和高扩展性。由于减少了部署时间，Terracotta极大地减少了支撑Web应用所需要的运营和资金成本。Terracotta 3.0已应用众多跨行业领域，例如旅游，游戏，金融服务，通信，健康服务和社会化网络。因为Terracotta使用Java技术，如果你知道Java，你就知道Terracotta。<br />
<br />
<strong>Java技术在开发者解决方案中<br />
<a href="http://www.reportmill.com/">DataBox, ReportMill Software, Inc.</a></strong>
<br />
来自于ReportMill的软件，DataBox，是一个即时的Java应用程序构建工具，它提供你所需的一切以便捷地创建及部署基于Java技术的应用。从创建数据库表到设置应用程序表单和报表，DataBox能够在任一浏览器中部署Applet应用。原本常常需要多种工具，广博技术和大量时间的程序部署，在使用DataBox后将会很快完成。<br />
<br />
<strong>Java技术在教育领域中<br />
<a href="http://www.alice.org/">Alice 3, Carnegie Mellon University</a></strong>
<br />
由卡内基-梅隆大学的学生们创建的Alice是一个one-of-a-kind项目，它帮助孩子们学习复杂的Java程序设计语言及其语法，并能带来无穷乐趣。3D动画提供可视化的自然的程序，以帮助学生们理解程序的执行，并捕捉由程序产生的逻辑错误。由Electronic Arts捐赠的，来自于Sims 2.0的成果为学生们提供了许多角色，场景和高水平的动画，以创建电影和游戏，这些将成为富有刺激的环境和充满活力的体验。可在JaveOne的<a href="http://java.sun.com/javaone/2009/activities.jsp#Playground">Change (Y)our World Playground</a>中访问到卡内基-梅隆大学的该团队。<br />
<br />
<strong>Java技术在教育领域中<br />
<a href="http://www.wpi.edu/">Worcester Polytechnic Institute</a></strong>
<br />
伍斯特理工学院(WPI)，美国最历史最悠久、最具领导性的理工学院之一，寻找一种方法来应用在教室中所学到的知识以去影响社会，并改善其他人的生活。这就是WPI全体教师的一项使命，他们教育具有天赋的学生们为每个人去创造，发现和传播知识，并展示知识如何用于日常生活中。使用像Java和 NetBeans这样的开源软件，WPI发起了<a href="http://first.wpi.edu/FRC/index.html">FIRST Robotics竞赛</a>，该竞赛旨在于帮助高中年龄段的年轻人们发现工程化生活是如何的有趣、有益。<br />
<strong><br />
Java技术在环境领域中<br />
<a href="http://www.sealite.com.au/">Unique GSM Modules With Java Technology, Sealite Company</a></strong>
<br />
Sealite公司创建的产品只需要很低的电能，使用的是太阳能，并通常只需要很少甚至不需要任何维护。Sealite最负盛名的创新就是一种独一无二的使用Java技术的基于GSM移动电话的监控与报警系统。该系统允许用户监控一种适用于特制SIM卡的航标灯，每个SIM卡都有一个特定的编号，无需离开海岸就能检查这些航标灯。该GSM监控与报警系统能从全球任何地方提供实时的信息。这种低成本和高度集成的系统降低了维护与运营成本，并提高了航行的安全性。<br />
<br />
<strong>Java技术在网络解决方案中<br />
<a href="http://www.ndsatcom.com/en/">
The NetBeans Satellite Tracking System, ND SatCom Network Management Systems</a></strong>
<br />
在卫星网络与系统行业有着超过25年经验的ND SatCom公司已成长为该领域的领导性公司之一。ND SatCom公司针对国防网络的网络管理系统，由1116个NetBeans平台模块组成，它基于一个符合国际标准的、开放的，层次化的架构。系统管理模块作用于系统层次的网络计划，资源管理和配置管理，同时该系统可由多个网络组成。NetBeans卫星跟踪系统由大约一百万行手写代码，三百五十万行生成的代码，超过十万行用于元器件通信的C++代码和超过1000个NetBeans模块组成。<br />
<br />
<strong>Java技术在开源社区中<br />
<a href="http://www.mifos.org/">
Mifos</a></strong>
<br />
基于Wbs的管理信息系统Mifos利用一个中央化的开源技术平台去帮助小额金融机构(MFI)高效地为穷人提供金融服务，并对抗全球性的贫困。为了满足数百万人对金融服务的需要，MFI需要一个可靠且可扩展的系统--<a href="http://java.sun.com/javase/">Java SE 6平台</a>。作为一个健壮而成熟的程序设计语言，它还拥有着世界范围的忠实且睿智的开发者社区，Java SE 6帮助Mifos构建一个社区驱动的平台，使技术赋予穷人力量，以使他们自己摆脱贫穷。由于这个由相关个体参与，协作，创造和采用的社区，Mifos选择了开源技术，同时也为透明性，高品质性，弹性和长效性提供了空间。<br />
<br />
<strong>Java技术工具<br />
<a href="http://www.atlassian.com/software/clover/">Clover, Atlassian</a></strong>
<br />
Clover是一个Java代码覆盖工具，它拥有测试级别的洞察力，即时IDE反馈，交互式报表和测试优化。除了覆盖率之外，Clover通过识别项目风险及速效来深入到用户的测试中。Clover可识别特定的测试以覆盖代码中的不同行，也能识别执行哪些测试去覆盖所作的特定改变。由于可集成到IDE中，你不废吹灰之力就能利用Clover洞察测试的能力了。<br />
<br />
</span>
<img src ="http://www.blogjava.net/jiangshachina/aggbug/280026.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2009-06-04 16:42 <a href="http://www.blogjava.net/jiangshachina/archive/2009/06/04/280026.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>注册JavaOne(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2009/04/15/265870.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Wed, 15 Apr 2009 14:43:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2009/04/15/265870.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/265870.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2009/04/15/265870.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/265870.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/265870.html</trackback:ping><description><![CDATA[<p align="center"><strong style="font-size: 14pt;">注册JavaOne</strong><br />
</p>
<span style="font-size: 10pt;">今年的<a href="http://java.sun.com/javaone/">JavaOne</a>已经开始接受注册了，<a href="http://blogs.sun.com/jag/">Games Gosling</a>向大家发出了<a href="http://blogs.sun.com/jag/entry/sign_up_for_javaone">邀请</a>... (2009.04.16最后更新)<br />
<br />
&nbsp;&nbsp;&nbsp; Sun的Java同仁们为今年的<a href="http://java.sun.com/javaone/">JavaOne</a>大会再次做好了充分的准备。提交的论文很惊人：它们将会贡献内容格为丰富的技术议程。Java EE 6将是企业级方面的主要看点。Swing和JavaFX则将无处不在。嵌入式领域会继续更有趣的事情：<a href="http://www.lincvolt.com/">LincVolt</a>将会出现在一堆酷炫的电子器件中。<br />
&nbsp;&nbsp;&nbsp; 我知道经济处于混乱，好像世界正在溶化，但JavaOne是一个很好的机会，使你能够置身其外，过一个奇客的假期。来加入我们吧！<br />
</span>
<img src ="http://www.blogjava.net/jiangshachina/aggbug/265870.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2009-04-15 22:43 <a href="http://www.blogjava.net/jiangshachina/archive/2009/04/15/265870.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Rock Star 2008 -- Chet Haase(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2008/06/01/205180.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Sun, 01 Jun 2008 13:02:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2008/06/01/205180.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/205180.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2008/06/01/205180.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/205180.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/205180.html</trackback:ping><description><![CDATA[<div align="center"><strong><span style="font-size: 10pt;"><span style="font-size: 14pt;">Rock Star 2008 -- Chet Haase</span></span></strong><br />
</div>
<span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 这是一篇在今年的JavaOne会议期间<a href="http://java.sun.com/javaone/sf/2008/articles/rockstar_chethaase.jsp">对Chet Haase的访谈</a>。关注Swing，Java 2D的朋友，对这位图形/UI开发方面的大牛肯定不会陌生。很高兴在不久前由他与Romain Guy合著的<a href="http://www.china-pub.com/39895">Filthy Rich Clients一书的中文版</a>已经出版了^_^ (2008.06.01最后更新)<br />
&nbsp;&nbsp;&nbsp; 祝大家六.一国际儿童节愉快！愿大家都能保持一颗年轻的心*_*<br />
&nbsp;&nbsp;&nbsp; <span style="color: rgb(255, 0, 0);">特别祝地震灾区的小朋友们节日快乐，愿他们在今后的岁月中能够幸福地成长:-)<br />
</span><br />
简历：<a href="http://graphics-geek.blogspot.com/">Chet Haase</a>是Adobe公司Flex SDK组的高级计算机科学家，他关注于图形问题及特性。早些时候，他工作于Sun Microsystems公司，是Desktop Java组的一名客户端软件架构师，涉及形如Java 2D，Swing，AWT和部署这样的客户端技术。他与Romain Guy一起是<em>Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications</em>一书的合著者。在2008 JavaOne大会中，他和Guy有一个关于Filthy Rich Client的议题。<br />
<br />
</span><span style="font-size: 10pt;">Q：若干月前，你出版了<a href="http://www.filthyrichclients.org/">Filthy Rich Clients</a>一书。关于它，开发者们应该知道些什么？<br />
A：有四点：第一，它涉及的特性丰富的功能，能帮助开发者创造更好的应用和更好的用户体验。第二，它有许多关于Swing和Java 2D的内幕，以便开发者不仅能理解我们写的功能，还能理解这些技术本身，他们就能使用这些技术去写出他们自己的功能了。第三，它是一本有趣的读物，至少我们努力去做到这一点。最后，在<a href="http://www.filthyrichclients.org/">本书的站点</a>上，可获取所有的示例和工具类库，包括源代码。<br />
<br />
Q：在Sun的Java Client组工作了8年之后，你在2008年的1月份离开了，并加入了Adobe。告诉我们你所从事的工作。<br />
A：我加入Flex组，从事与图形有关的工作--这没什么奇怪的。在目前为止，我主要专注于相关的平台：Flex，Flash，AIR，MXML，ActionScript3。对于某个在过去8年多的时间中一直从事于Java方面工作的人来说，有很多东西需要学习。同时，在全组为下一版的发布而对某些组件进行重新构架的工作中，我已在帮忙了。开始时，我关注动画方面。<br />
<br />
Q：周三下午5点，在Metreon，有一个Adobe的活动。到时你会与James Ward有一个简短的演讲。告诉我们关于它的一些情况。<br />
A：那会很有趣。James Ward将给出Flex平台的一个简介，包含如何编写与Java后台交互的Flex客户端程序。而我--也可能是我的合著者Romain Guy--将展示一些"Filthy Rich" Flex应用示例。这些示例关于如何使用Flex去实现我们在书中谈到的功能。使用Flex去实现的方法会不同，但你可以使用该平台去达到非常相似的功能。任何感兴趣的人都应去Adobe的展台，然后获取一份邀请。<br />
<br />
Q：是什么吸引你去开发图形软件？<br />
A：我喜欢从我的程序中得到可视化的反馈。当它正常工作时，你可以在屏幕中看到结果。当它坏掉了，你也能看到它在屏幕中不正常的样子。与调试某些隐蔽的数据库事务相比，这更能让我满足。还有，图形能够将我的数学背景结合到我的软件背景中。计算机图形学使用了从线性代数到三角函数到几何学再到微积分学的许多技术。使用数学在屏幕上显示美妙的图片，与我所处的数学领域能做的多数事情相比，这更加有趣。<br />
<br />
Q：对于那些想以做图形软件作为职业的人，你有什么建议？<br />
A：应用你所需要的数学课程。并不需要高级的知识，但以我已做过的很多软件来看，我着重学习了线性代数，及其一定的微积分学。<br />
<br />
Q：对于新接触Java程序设计语言的程序员，你会给出什么建议？<br />
A：不使用行号。不要把你的整个应用放在一个方法中。相信垃圾收集器能做好它的本职工作。<br />
<br />
Q：哪种产业已经准备开始大规模履行在Web服务方面的承诺？<br />
A：摔跤。当WWF(世界摔跤联合会)在万维网(World Wilde&nbsp;Web)上使用Web服务时，网络别名就将是wwwwwfws。<br />
<br />
Q：能描述一下你写代码的过程吗？<br />
A：我会试着在脑海中收集素材，可能会将一些不成熟的想法写在小纸片上，这样我之后就不用再去找了。这一机制中的某些观念将来会用得上。然后我开始写原型。<br />
我在一些书中看过一种理想化的方法，你将整个系统--API，或随便什么--以简短方法和注释的形式进行描述，然后你所要做的就是填充细节。也许真的有人用这种方法写代码，但我尚未遇到。<br />
很多软件是研究性项目，在那里并不清楚什么是可能的或需要做的细节是怎样的。所以当我快要知道我想达到的什么时，我会开始写一些代码以找出接下来要做的工作以及如何去做。<br />
<br />
Q：你创造的最让你感自豪的代码是什么？<br />
A：<a href="https://timingframework.dev.java.net/">Timing Framework</a>。这个类库增补了一项我在Java SE中见到的空白--Java SE缺乏有用的定时-动画特性。然后基于我们自己的或其他人给我们的需求，Timing Frame有机地发展起来。<br />
我也对Filthy Rich Clients中的所有代码感到十分自豪。这些代码示例意在向人们展示如何去完成一些特定的任务，但像简单执行的代码一样，作为教程而写成的这些代码也便于教学。<br />
<br />
Q：下一次大的技术革命是什么？<br />
A：香蕉电话。水果兼具通信元件与营养小吃的功能。<br />
<br />
Q：在此之前的五年内，你认为最重要的Java API是什么？<br />
A：没有什么比System.out.println更有用的了？<br />
<br />
Q：你能给我们一个优美代码的例子吗？<br />
A：这儿就有一个：<br />
&nbsp; 10 print "fart"<br />
&nbsp; 20 goto 10<br />
<br />
Q：如果你想向Santa Claus要一个<a href="http://www.netbeans.org/">NetBeans IDE</a>的新插件，那会是什么？<br />
A：<a href="http://www.adobe.com/devnet/actionscript/articles/actionscript3_overview.html">ActionScript3</a>的编辑器，如何？<br />
<br />
Q：当你感到困惑时，你会做些什么？<br />
A：拿一支笔和一张纸，然后思考着这个问题。也会散散步，或者与某个人一起讨论这个问题，或者换一杯咖啡--也许没什么帮助，但味道不错。<br />
<br />
Q：Java平台最近的什么变化使你的生活变得轻松些？<br />
A：我发现<a href="http://java.sun.com/javase/downloads/index_jdk5.jsp">J2SE 5.0</a>的一些语言变化，像新的for循环，很有用。<br />
我用过一些泛型以简化Timing Framwork API，虽然我知道泛型的真正好处是让用户泛型化API，而不是让开发者在他们自己的代码中使用泛型。<br />
<br />
Q：Swing开发者需要理解的最重要的东西是...？<br />
A：在沾手之前，先关掉食品加工器。<br />
<br />
Q：你认为Web 2.0的最大技术障碍是什么？<br />
A：有太多的框架用于"Web 2.0"应用。特别是在Ajax世界，很难知道从哪儿开始、继续或结束。从某种程度来看，一个开发者的脑海中只会中意最有可能流行的框架。可能更应该写作"Web Too"，即，"太多的选择"。<br />
<br />
Q：你是否是网络开发者社区的一位正式成员？<br />
A：我并不处在某个特定的社区内，但在我关注的开发领域内，我是一位经常写作的<a href="http://graphics-geek.blogspot.com/">博客</a>。我认为拥有伟大的类库是吸引开发者群的重要组成部分。<br />
但是向开发者们解释应该如何使用这些类库，以及使用特定的、合适的例子去展示这一点，则是另一个同等重要的部分。<br />
<br />
Q：图形软件应该如何溶入Web 2.0的画卷中？<br />
A：就我理解，Web 2.0是关于在浏览器中的更好、更动态的用户体验。不论你使用何种框架，这种体验都意味着丰富的图形与功能。甚至只是简单的如，动态地将购物商品拖入购物车，或使用有趣的图形技术在页面上使某个元素淡入淡出，这样的功能。<br />
<br />
Q：你如何看待开源软件？<br />
A：我认为开源软件很伟大，但并不是由于人们可能设想到的原因。当人们听到一个项目是开源的，他们可能猜测有一大批来自世界各个角落的人们在帮助这个项目，向其中塞入代码，并以这种松散的方式进行协作。<br />
我见过的大多数开源项目已较少关心人人贡献了，而更多的是关心源码库的透明性以及来自开发者的广泛反馈。多数的公司和人可能更关心的是，他们能够看到黑箱中的东西，然后会建议进行适当的改进，而不会是实际地去做这些改进，也不会使自己亲自加入到项目中。<br />
所以，就像我的Timing Framwork所获得的好处，并不是大家直接地向它提交代码，而是大家能够去看它是如何工作的，然后与我讨论怎样去改进它，以去适应他们的特定情形。<br />
Java和Flex SDK都是开源。不论选择加入的人的水平如何，我希望它们都能从社区的参与中获益。<br />
<br />
Q：大家知道你在博客中写有滑稽和诙谐的东西。你是否认为幽默与滑稽能保持你作为一个开发者的敏锐、自由与创意。<br />
A：是的，就是那样。这就是我那样做的原因。<br />
不，我这么做其实也没有什么理由。我只是喜欢博得一笑罢了。然而我也知道，如果人们都睡着了，你就不能教他们了。<br />
所以，使一次讲演具有趣味性，与使其信息丰富一样重要。我见过十分乏味但内容很好的讲演，但一般来说，对于越活跃的讲演，大家越能记住它，也越想再听一次。<br />
这同样适用于文章：为了使你的观点具有穿越性，如果你能使用一些有趣的比喻或词汇，就比只是在他们面前弄一些代码和方程式，更有机会使你的读者们继续看下去。<br />
<br />
Q：能与我们分享两个你最喜欢的奇客<sup>[1]</sup>笑话或故事吗？<br />
A：我不能保证他们是我最喜欢的或是最好笑的，但至少它们都很新--在本周才把它们帖到我的博客中--也很奇客：<br />
&nbsp;&nbsp;What do you call it when a chip manufacturer loses money?<br />
&nbsp;&nbsp;A cash miss.<br />
<br />
&nbsp; What do you call someone that has to use a dull web application?<br />
&nbsp;&nbsp;Bored to tiers.<sup>[2]</sup>
<br />
<strong style="font-size: 12pt;">译注</strong><br />
[1]奇客，Geek，指性格奔放甚至怪僻，擅长计算机的人。<br />
[2]由于对这两则笑话的"本质"尚未领悟，所以暂不翻译。<br />
<br />
<strong><span style="font-size: 12pt;">请关注上一篇译文：<a href="http://www.blogjava.net/jiangshachina/archive/2008/05/31/204939.html"><span style="font-size: 10pt;"><strong></strong></span><strong>Rock Star 2008 -- Joshua Bloch</strong></a></span></strong></span><strong></strong>
<img src ="http://www.blogjava.net/jiangshachina/aggbug/205180.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2008-06-01 21:02 <a href="http://www.blogjava.net/jiangshachina/archive/2008/06/01/205180.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Rock Star 2008 -- Joshua Bloch(译)</title><link>http://www.blogjava.net/jiangshachina/archive/2008/05/31/204939.html</link><dc:creator>Sha Jiang</dc:creator><author>Sha Jiang</author><pubDate>Sat, 31 May 2008 15:39:00 GMT</pubDate><guid>http://www.blogjava.net/jiangshachina/archive/2008/05/31/204939.html</guid><wfw:comment>http://www.blogjava.net/jiangshachina/comments/204939.html</wfw:comment><comments>http://www.blogjava.net/jiangshachina/archive/2008/05/31/204939.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/jiangshachina/comments/commentRss/204939.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jiangshachina/services/trackbacks/204939.html</trackback:ping><description><![CDATA[<div align="center"><strong><span style="font-size: 14pt;">Rock Star 2008 -- Joshua Bloch</span><br />
</strong></div>
<span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; 这是一篇在今年的JavaOne会议期间对<a href="http://java.sun.com/javaone/sf/2008/articles/rockstar_joshuabloch.jsp">Joshua Block的访谈</a>。作为闻名的Java guru，大家已经从Joshua的<a href="http://java.sun.com/docs/books/effective/"><em>Effective Java</em></a>，<em>Java Collection Framework</em>，...中获益了。相信，Joshua Block在访谈中的一些真知灼见，仍然会使大家受益良多。(2008.06.02最后更新)<br />
<br />
<strong>简历</strong>：Joshua Block，Google公司的首席Java构架师，曾为Sun Microsystems公司的杰出工程师，由于<em>Effective Java Programming Language Guide</em>一书，他获得了<em>Software Development Magazine</em>极富盛名的Jolt大奖。在Sun公司时，他领导设计并实现了众多的Java平台特性，包括JDK 5.0的语言升级以及获奖的Java集合框架。他拥有卡纳基-梅隆大学计算机科学博士学位，目前还是<em>Effective Java, Second Edition</em>的作者。<br />
<br />
Q：你和Brian Goetz将会有一个名为"撰写下一本伟大的Java技术书籍"(BOF-6588)的议题。写一本伟大的Java书籍需要做些什么？<br />
A：这要看实际情况。你可以以书籍的形式介绍那些之前还没有被介绍过的重要知识，就如Brian Goetz和Tim Peierls 在<em>Java Concurrency in Practice</em>一书中所做的那样。或者，你也可以写一部对现有资料的原创讲解，使它能被所有未接触过Java的人所接受，就如Kathy Sierra和Bert Bates在<em>Head First Java</em>一书中所做的那样。你也可以先弄一大堆资料，然后提炼出其中的精华，就像Peter Sestoft在<em>Java Precisely</em>一书中做的那么出色。这还可以接着说下去。<br />
Q：对于你写的<em>Effective Java</em>，开发者经常告诉我，那是他们最喜欢的Java技术书籍。你将二次贡献名为"More 'Effective Java'"(TS-6623)的议题，在那儿，你将谈论Java平台新近的最佳实践。让我们先了解一点儿它的情况。<br />
A：我正在收集新出现在该书第二版中的素材。去年，我花了大量时间在谈论泛型，所以今年我仍将重点关注它，我确实有一个新的期望能够分享的泛型小窍门。<br />
我也将介绍一些关于enum类型的有趣素材，并有一个针对延迟初始化的最佳实践的简明指导。是的，我还计划展示我们州长年轻时的一张祼照<sup>[1]</sup>。<br />
<br />
<strong style="font-size: 12pt;">一天的生活<br />
</strong>Q：描述一下你在Google的一天中的生活。<br />
A：那是个工作的好地方。我与许多来自世界各地的聪明人一起工作，那儿不缺乏挑战性的工作去做。 Google理解开源以及回馈社区的重要性，所以他们一直支持我在Java平台方面的持续工作。额外的好处就是他们因此而获得的好名声。<br />
Q：你在Google吃的最好的一餐是什么？<br />
A：嗯...可能是两年前在Cafe 7吃的烤鹌鹑？或者可能是在Pinxto吃的Shiro Maguro Sashimi？有些饮品也是很棒的。<br />
Q：这些食物真的很好吃吗？<br />
A：是的。我不是说在那儿我就没吃过差的食物，但总的来看，确实很好。<br />
<br />
<strong style="font-size: 12pt;">将"Bloch"作为动词</strong><br />
Q：如果你能将"Bloch"变成动词，就如已对"Google"做的那样，那么动词"Bloch"会是什么意思？<br />
A：天啊，这是个很难的问题。可能是"写出好的API"？当然，这将不会发生，而我也乐于接受。在每一代中，只会有很少的人够得上用一个词去称呼，并且经常是一个形容词。如你所知的：牛顿的，笛卡尔的，莎士比亚的，就像这样的。<br />
由于某种原因，这使我想起多年前看到的一则头条。当Miles Davis<sup>[2]</sup>逝世时，纽约时报上他的讣告说："Miles Davis，小号手，去逝了；爵士天才，65岁，绝对的酷"。我也想到了自己，"是的，这就是一个总结。而且还没人能上这样的头条"。<br />
<br />
<span style="font-size: 12pt;"><strong>最美的代码</strong></span><br />
Q：你所喜爱的代码是怎样的？或者说，你所见过的最漂亮的代码是什么样的？如诗般的代码？<br />
A：我看过许多代码都能激起这种反响。就像真的诗歌一样，在某人看来很美的一段代码可能在其它人看来很丑陋。这儿有一段神秘的代码诗：<br />
&nbsp;&nbsp;&nbsp; static int inverse(int val) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t *= 2 - val * t;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t *= 2 - val * t;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t *= 2 - val * t;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t *= 2 - val * t;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return t;<br />
&nbsp;&nbsp;&nbsp; }<br />
正如它的名字所暗示的，该方法计算奇参数的乘法逆值，mod 2^32。换言之，对于所有的奇整数i，有i * inverse(i) == 1。它根据牛顿迭代原理。<br />
有严格的证据表明这四个迭代--方法中非回转的循环--对于任何输入值都足够了。那么这是我见过的最漂亮的代码吗？不，但它确实十分的聪明。<br />
如果你喜欢这样的东西，你应该去看看Henry S. Warren的书<em>Hacker's Delight</em>(Addison-Wesley，2003)。当你能看这本书时，要翻到"The Quest for an Accelerated Population Count"一章。在Osram和Wilson的<em>Beautiful Code</em>(O'Reilly，2007)一书中，当你手里也有这本书的话，也要读一下Jon Bentley 写的"The Most Beautiful Code I Never Wrote"一章。Jon写了许多诗歌般的代码。<br />
<br />
<strong style="font-size: 12pt;">最有趣的代码<br />
</strong>Q：你能想到的最有趣的代码是什么？<br />
A：<a href="http://thedailywtf.com/">The Daily WTF</a>中满是有趣的代码。Bill Pugh也经常发给我一些由<a href="http://findbugs.sourceforge.net/">FindBugs</a>发现的有趣代码。这儿有一个令人欣喜的例子--我发誓，它从未被透露过：<br />
&nbsp;&nbsp; public Object getObject(java.util.Map&lt;String,Class&lt;?&gt;&gt; map)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throws SerialException<br />
&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; map = new Hashtable(map);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!object.equals(null)) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return map.get(object);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throw new SerialException("The object is not set");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp; }<br />
Q：代码是世界语吗？如果是，那为什么？<br />
A：我认为音乐才称得上，其次就是数学了。因为音乐将自然语言与数学符号联系了起来。代码很像数学：创建具有良好可读性程序的很大一部分工作就是选择好的标识符名称，而这就要基于自然语言。<br />
Q：哪位Java达人深深地影响了你？是在什么方面？<br />
A：应该是Doug Lea<sup>[3]</sup>。他知道很多事情中的很多东西，多年来，他激发了我数不清的想法。他总有让人感兴趣的事情可说。并且他有一种不可思异的能力，能发挥出VM的最佳性能。幸运的是，他已教给我一些他的窍门。例如，Branch Free代码会运行的很快，缓存的作用将会终结，内联探索法(I<font size="2">nlining Heuristics</font>)在性能方面有着巨大的效用。<br />
Q：能给我们一个你创造的最让你感到自豪的代码例子吗？并解释一下为什么？<br />
A：集合框架。虽远非完美，但多年来，已经证明了它的可维护性与优雅。而前面提到的Doug Lea构建的java.util.concurrent包中的许多部分就构建集合框架之上。并且在程序员的来信中，他们总是告诉我，集合框架是如何使他们的工作更加赏心悦目。它能使你写像下面这个程序那样的代码，这个程序通过标准输入流计算文件中所有的片语：<br />
public class Anagram {<br />
&nbsp;&nbsp;&nbsp; public static void main(String[] args) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int minGroupSize = Integer.parseInt(args[0]);<br />
&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Read words from input and put into simulated multimap<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Map&lt;String, List&lt;String&gt;&gt; anagrams =<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; new HashMap&lt;String, List&lt;String&gt;&gt;();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (Scanner s = new Scanner(System.in); s.hasNext(); ) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String word = s.next();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String alphagram = alphagram(word);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; List&lt;String&gt; group = anagrams.get(alphagram);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (group == null)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; anagrams.put(alphagram, group = new ArrayList&lt;String&gt;());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; group.add(word);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Print all permutation groups above size threshold<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (List&lt;String&gt; group : anagrams.values())<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (group.size() &gt;= minGroupSize)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(group.size() + ": " + group);<br />
&nbsp;&nbsp;&nbsp; }<br />
<br />
&nbsp;&nbsp;&nbsp; private static String alphagram(String s) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] chars = s.toCharArray();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Arrays.sort(chars);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return String.valueOf(chars);<br />
&nbsp;&nbsp;&nbsp; }<br />
}<br />
Q：当你感到困惑时，你会做些什么？<br />
A：我会喝一杯美味的热咖啡。Google有很好的咖啡机，这些机器来自于Barefoot Coffee Roasters。如果不管用，我就会去走一走。如果还不管用，我就会去叫Doug Lea。<br />
Q：你使用哪些网络资源，以紧跟Java技术。<br />
A：规范，还有Google。无论走到哪里，这都能帮上我。<br />
Q：是否有一种益智的训练或有趣的行为让你觉得能使你成为一名更好的开发者？<br />
A：我认为数学和写作能使你成为更好的开发者。数学与编程一样，要求严谨的思维。而写作会强迫你去组织你的想法。数学和写作都训练了相同的审美机能，而这对于写出好的程序也是必需的。<br />
Q：你希望在工科学校中你还应该学到哪些东西？<br />
A：我希望我能更好地学会弹吉他，现在我弹的可不好。我希望能学一门外语，还有艺术史。当然，还想学一些商业和金融方面的知识。这样说起来，哥伦比亚大学会对我有更好的帮助。我会鼓励本科生们，当他们还有时间时，就要创造机会去获取更宽泛的知识。以后，他们会有足够的时间深入到其中。<br />
<br />
<strong style="font-size: 12pt;">译注</strong><br />
[1]这张"祼照"就是加利福尼亚州现任州长</span><span style="font-size: 10pt;">阿诺.施瓦辛格的健美祼肤照。</span><br />
<span style="font-size: 10pt;">[2]Miles Davis，爵士乐大师。点击<a href="http://www.nytimes.com/learning/general/onthisday/bday/0525.html">此处</a>可以看到纽约时报上关于他的讣告全文。<br />
[3]<a href="http://g.oswego.edu/">Doug Lea</a>，java.util.concurrent的创始人，目前也是<a href="http://openjdk.java.net/">OpenJDK</a>临时管理委员会的成员。<br />
<br />
<strong style="font-size: 12pt;">请关注下一篇译文：<a href="http://www.blogjava.net/jiangshachina/archive/2008/06/01/205180.html">Rock Start 2008 -- Chet Haase</a></strong></span>
<img src ="http://www.blogjava.net/jiangshachina/aggbug/204939.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jiangshachina/" target="_blank">Sha Jiang</a> 2008-05-31 23:39 <a href="http://www.blogjava.net/jiangshachina/archive/2008/05/31/204939.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>