<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    John Jiang

    a cup of Java, cheers!
    https://github.com/johnshajiang/blog

       :: 首頁(yè) ::  :: 聯(lián)系 :: 聚合  :: 管理 ::
      131 隨筆 :: 1 文章 :: 530 評(píng)論 :: 0 Trackbacks
    Rock Star Josh Bloch
    這是一篇前不久在JavaOne 2007期間(5月初)SDN(Sun Developer Network)對(duì)Joshua Bloch的訪談。我看了多遍,受益良多,就翻譯在了此處。由于本人英文水平有限,文中部分語(yǔ)句暫時(shí)無(wú)法得到準(zhǔn)確的翻譯,故英文原文一并給出,請(qǐng)大家斟酌。(2007.06.12最后更新)

    Bio: Joshua Bloch, Google's chief Java architect and a former Distinguished Engineer at Sun Microsystems, won the prestigious Jolt Award from Software Development Magazine for his book, Effective Java Programming Language Guide. At Sun, he led the design and implementation of numerous Java platform features, including JDK 5.0 language enhancements and the award-winning Java Collections Framework. He holds a Ph.D. in computer science from Carnegie-Mellon University and is most recently the co-author, with Neal Gafter, of Java Puzzlers.
    簡(jiǎn)歷:Joshua Bloch,Google公司的首席Java架構(gòu)師,也曾是Sun公司的杰出工程師。由于書籍Effective Java Programming Language Guide,他從Software Development Magazine那兒贏得了極負(fù)聲名的Jolt大獎(jiǎng)。在Sun公司時(shí),他領(lǐng)導(dǎo)設(shè)計(jì)并實(shí)現(xiàn)了眾多的Java平臺(tái)特性,包括JDK 5語(yǔ)言的提升以及獲獎(jiǎng)的Java集合框架。他從卡納基-梅隆大學(xué)獲得了計(jì)算機(jī)科學(xué)博士學(xué)位。最近,他與Neal Gafter一起成為Java Puzzlers的合作作者。

    Q: I've heard that at your doctoral thesis defense at Carnegie-Mellon, which was open to anyone for questions, you planted a long technical question with your mother that you answered flawlessly after saying, "Awww, Mom!" Is that true?
    我聽(tīng)說(shuō)你了在卡納基-梅隆大學(xué)時(shí)謀劃的博士論文,這個(gè)論文為了尋求問(wèn)題而被放開(kāi)給每個(gè)人。你在你母親的幫助下弄出了一個(gè)很長(zhǎng)的技術(shù)問(wèn)題,在說(shuō)出來(lái)之后,你的回答毫無(wú)瑕疵。

    A:Yes. The question appeared to tear the work to shreds. My mom had fun with it, and so did I. Thesis defenses can be so dry. I did everything I could to inject a bit of levity into mine. I also answered another -- planted -- question with a rap, complete with recorded rhythm track. I had a boom box concealed under the desk during the talk.
    是的。這個(gè)問(wèn)題的出現(xiàn)將工作分成小塊。我媽媽喜歡它,我也是的。撰寫論文是如此的枯燥。我做每件事情時(shí),都希望能夠給我自己的事情加入一點(diǎn)樂(lè)趣。我也回答了與RAP有關(guān)的另一個(gè)問(wèn)題,使用一個(gè)記錄節(jié)奏跟蹤器完成。在談話的過(guò)程中,我將一個(gè)Boom Box(譯注:一種便攜式的音頻系統(tǒng),一般由無(wú)線電、磁帶或CD播放器組成)藏在桌子下面。
    上述一問(wèn)一答,我確實(shí)無(wú)法準(zhǔn)確翻譯??赡苌婕暗侥硞€(gè)典故,并且語(yǔ)言很口語(yǔ)化。希望有朋友能夠教我 :-D

    Q: You are currently busy revising Effective Java. Can you give us some hints about what will be in the second edition?
    目前,你正在修訂"Effective Java"。你能否給我們一些關(guān)于可能出現(xiàn)在第二版中的內(nèi)容的一些線索?

    A: I'm trying very hard to preserve the tone of the first edition. I'm revising all the existing items in light of the J2SE 5.0 language changes and everything I've learned since 2001. I'm adding a few more items here and there, plus an entire chapter on generics. Also, I'm slanting the threads chapter toward java.util.concurrent.
    我正在努力保持第一版的風(fēng)格。我正修改的所有已經(jīng)存在的條目都據(jù)于J2SE 5.0語(yǔ)言的變化,以及從2001年至今我所學(xué)習(xí)到的任何東西。我正在各處添加一些更多的條目,為泛型加入了一整章。為了java.util.concurrent包,我也會(huì)對(duì)多線程這一章進(jìn)行傾斜。

    Q: What are the most interesting or funny reactions you have gotten from readers of Java Puzzlers?
    你已經(jīng)從Java Puzzlers的讀者那兒得到的最有趣或最奇特的反應(yīng)是什么?

    A: Well, I got a letter from David Bacon thanking me for the copy I sent him and saying that it was the perfect thickness to raise his monitor up to the correct height. Then he sent me a picture of his intern's monitor with a copy of the book under it. I also thought it was pretty funny when our Japanese translator, Yoshiki Shibata, caught us falling into one of our own traps. It's described here, if you're curious.
    我得到了David Bacon的一封信,感謝我送給了他一本該書,并且說(shuō)那是一個(gè)使他的顯示器上升達(dá)到正確高度的理想厚度。后來(lái)他遞給我一張他的內(nèi)部顯示器圖片,這本書就在顯示器的下方。我同樣認(rèn)為我們的日文版譯者,Yoshiki Shibata,為趕上我們而落入了我們自己的一件行李中,是一件十分有趣的事情。就描述到這,如果你感興趣的話。
    如果這兩件"趣聞"真的如我翻譯的那樣的話,我可真感到驚訝。關(guān)于第一件趣事,如果我是該書的作者,我會(huì)認(rèn)為
    David的行為是對(duì)我的一種極大的諷刺--我的書是用來(lái)看的,不是用來(lái)墊顯示器的;關(guān)于第二件趣事,我認(rèn)為就是Josh在"諷刺"(至少是無(wú)惡意的吧)那位可憐的日文譯者。不過(guò),老外很開(kāi)放的,也許這只是一些平常的"笑料"罷了。

    Q: In June 2004, when you became chief Java architect at Google, you were put in charge of spreading and encouraging the use of Java technology there. How has it gone?
    在2004年6月,當(dāng)你成為了Google公司的首席Java架構(gòu)師,你在那兒就被置于推廣和鼓勵(lì)Java技術(shù)應(yīng)用的位置。后來(lái)如何了?

    A: Very well indeed. We use the Java platform extensively in many of our products and internal applications. Of course, we use other languages too.
    真的非常好。我們?cè)谖覀兊漠a(chǎn)品和內(nèi)部應(yīng)用中廣泛地使用Java平臺(tái)。當(dāng)然,我們也使用其它的語(yǔ)言。

    Q: Some people may not know that you identified a widespread bug affecting both Java and other languages that had gone unnoticed for half a century. Tell us about it.
    有些人可能不知道你發(fā)起過(guò)一個(gè)分布廣泛地Bug影響,包括Java和其它語(yǔ)言,它已經(jīng)被忽略達(dá)半個(gè)世紀(jì)之久了。告訴我們一些關(guān)于它的事情。

    A: It wasn't really half a century. A quarter century maybe. And I didn't really identify it -- I propagated it into the Java platform libraries! Someone reported the bug to Sun. I don't know who it was, but I was shocked -- and amused -- by the bug. At Peter Norvig's urging, I wrote it up for the Google research blog. I guess it caused quite a stir in the blogosphere.
    真的不是半個(gè)世紀(jì),可能是25年。并且也確實(shí)不是我發(fā)起它的--我只是將它介紹到了Java平臺(tái)庫(kù)中。某個(gè)人向Sun報(bào)告了這個(gè)Bug。我不知道他是誰(shuí),但我被這個(gè)Bug震驚了--也覺(jué)得很有趣。受Peter Norvig的催促,我把它寫入了Google的研究Blog。我猜想它在Blog界引起了一陣震動(dòng)。

    Q: How do you feel about the open sourcing of the Java platform?
    你怎么看Java平臺(tái)開(kāi)源?

    A: I think it's a good thing. It goes a long way toward easing the concerns of the open-source and research communities about the legal aspects of working with the platform. In many ways, it's always been a pretty open platform: free access to the source code, heck, even the bug database. But it's nice that Sun has gone all the way.
    我認(rèn)為那很好。在緩解開(kāi)源和研究社區(qū)對(duì)工作于這個(gè)平臺(tái)的法律方面的擔(dān)心已經(jīng)走過(guò)了很長(zhǎng)一段路。在許多方面,它始終都是一個(gè)十分開(kāi)放的平臺(tái):自由的訪問(wèn)源代碼,甚至是Bug數(shù)據(jù)庫(kù)。但非常好的是Sun已經(jīng)完成了所有的工作。

    Q: What advice would you give to a programmer new to the Java language?
    對(duì)于一個(gè)新接觸Java語(yǔ)言的程序員,你有什么建議?

    A: Write lots of code. Have fun with it! Collaborate with people who are more experienced than you and learn from them. Join an open-source project. Code reviews are a great way to learn. Don't be embarrassed when people find problems in your code. Fix them and have fun watching your code and your skills improve. Oh, yeah, and go buy a copy of Effective Java.
    寫大量的代碼,并以它們?yōu)闃?lè)。與那些比你更有經(jīng)驗(yàn)的人一起協(xié)作,并向他們學(xué)習(xí)。加入一個(gè)開(kāi)源項(xiàng)目。代碼回顧是一個(gè)很好的學(xué)習(xí)方法。當(dāng)別人發(fā)現(xiàn)你的代碼中的問(wèn)題時(shí),不必感到尷尬。修復(fù)這些問(wèn)題,并對(duì)于觀看你的代碼及對(duì)你技術(shù)的改進(jìn)而感到高興。噢,是的,去買一本Effective Java。

    Q: What do you think is the most inventive use of Java technology?
    你認(rèn)為對(duì)于Java技術(shù)最具創(chuàng)造性的應(yīng)用是什么?

    A: That's another tough one. I guess you can't go too far wrong with the Mars Rover. I was blown away by the images that it transmitted.
    那是另一個(gè)棘手的問(wèn)題。我猜想你不可能像Mars Rover(譯注:美國(guó)的火星漫游者飛行器,它的系統(tǒng)軟件使用Java編寫,這是Java發(fā)展歷程中的一件大事)那樣走得那么遠(yuǎn)。我為它發(fā)射時(shí)的畫面所傾倒。

    Q: What's the biggest misconception about Java technology?
    對(duì)Java技術(shù)的最大誤解是什么?

    A: What irks me most is that there are still people who think it's slow. That's ancient history. By J2SE 1.4, the platform was not appreciably slower than traditional compiled languages, and it just keeps getting faster. Both of the last two releases were impressive in this regard. You don't have to touch your program. Just download the new release, and your program will run significantly faster.
    最讓我感到厭倦的是,仍然有人認(rèn)為Java很慢。那已經(jīng)很久以前的事了。到J2SE 1.4時(shí),這個(gè)平臺(tái)就一點(diǎn)都不比傳統(tǒng)的編譯型語(yǔ)言慢了,并且它還在變得更快。最近發(fā)布的兩個(gè)平臺(tái)在這一點(diǎn)上令人影響深刻。你不用修改你的程序,只要下載最新的版本,你的程序就會(huì)明顯地運(yùn)行地更加快。

    Q: The Java class that you couldn't live without is...?
    你離開(kāi)就不能活的Java類是...?

    A: I'm going to have to say LinkedHashMap, even if I did write it. It combines the speed of HashMap with the predictability of a sorted map.
    我將不得不說(shuō)就是LinkedHashMap,即使我寫出了它。它使用一個(gè)排序的映射預(yù)覽而結(jié)合了HashMap的速度。

    Q: What's your favorite Java technology book?
    你所喜歡的Java技術(shù)書籍是什么?

    A: Modesty prevents me from answering this one directly, so I'll plug one of my favorite programming books that isn't specific to the Java language. Anyone who cares at all about bit twiddling should get their hands on Henry S. Warren's Hacker's Delight. It's the Bible of bit twiddling.
    謙虛防止我直接地回答這個(gè)問(wèn)題。所以我將指出我所喜歡的編程書籍之一并不特別關(guān)于Java語(yǔ)言。任何真正關(guān)注位運(yùn)算的人都應(yīng)該接觸過(guò)Henry S. Warren的"Hacker's Delight",它是
    位運(yùn)算的"圣經(jīng)"。

    Another book that every programmer should read is Jon Bentley's Programming Pearls. It's a great book about "programming in the small," as relevant today as when it was first published in 1986.
    另一本每位程序員都應(yīng)該閱讀的書就是Jon Bentley的"Programming Pearls"。這是一本偉大的關(guān)于"小型編程"的書,它對(duì)今天的價(jià)值就如同1986年它第一次出版時(shí)一樣。

    Q: Can you describe the process of writing code?
    你能描述一下寫代碼的過(guò)程嗎?

    A: For me, there are several distinct stages. The hardest part is figuring out what problem I'm really trying to solve. Once I do that, it's usually reasonably straightforward to envision the rough outlines of the solution. Then it's a "simple matter of programming" to make it real, including the tests, of course.
    對(duì)于我,有幾種不同的情況。最困難的部分就是勾畫出我真正需要去解決的問(wèn)題。一旦我做到了,常常就能相當(dāng)直接地想像出解決方案的粗略輪廓。

    Q: What's the next big technology revolution?
    下一個(gè)大的技術(shù)革命是什么?

    A: I'm really bad at predicting the future. It's clear that multicore machines will be mainstream in the very near future and that programs will have to change to take full advantage of them. I'm not betting on Software Transactional Memories (STMs) in the near term, but on high-quality multithreaded utilities, such as java.util.concurrent. Oh, yeah, and everything that isn't already on the web will be soon.
    在預(yù)知未來(lái)方面,我真正的很差。清楚地是,在非常近的未來(lái)多核機(jī)器將成為主流,程序?qū)⒉坏貌贿M(jìn)行改變以充分利用它們。我不是在為軟件事務(wù)內(nèi)存(STM)打賭,而是為高質(zhì)量的多線程工具類,如java.util.concurrent。噢,是的,還沒(méi)有在Web上的每一件東西都將很快成真。

    Q: What do you see as the most important Java technology API five years from now?
    從現(xiàn)在開(kāi)始的五年中,你將如何看待最重要的Java技術(shù)API?

    A: The core APIs -- java.lang and java.util -- will still be very important. But java.util.concurrent and its offspring will be equally important.
    核心API--java.lang和java.util--仍然將十分的重要。但是java.util.concurrent和它的后續(xù)者將變得同樣重要。

    Q: If you could work on a dream project, what would it be?
    如果你能在一個(gè)夢(mèng)想的項(xiàng)目中工作,你希望它是什么?

    A: A brand-new Java-like language atop the same virtual machine that is not compatible with the Java programming language. Rather than shoving yet more features into this language, I want a fresh start, but I want to leverage much of the work that has already gone into the platform. That means using the same virtual machine and providing some interoperability story with existing libraries.
    一個(gè)嶄新的、與Java相似的語(yǔ)言,運(yùn)行在一個(gè)相同的但與Java程序設(shè)計(jì)語(yǔ)言不兼容的虛擬機(jī)中。不要把這些特性擠到這個(gè)語(yǔ)言中,我想要一個(gè)新的開(kāi)始。我想影響大量的已經(jīng)進(jìn)入這個(gè)平臺(tái)的工作。這就意味著,使用相同的虛擬機(jī)并為已有的類庫(kù)提供交互性功能。
    關(guān)于Joshua對(duì)他所理想的項(xiàng)目的描述,我非常的迷惑,這段話仍然需要研究。

    Q: What recent changes to the platform have made your life easier?
    最近這個(gè)平臺(tái)的什么變化使你的生活變得更容易。

    A: I hate to sound like a broken record, but java.util.concurrent. Also java.util.ArrayDeque and NavigableMap. The for-each loop is great, and so are generics, even if they do complicate things somewhat.
    我很不喜歡說(shuō)類似于破記錄之類的話,但對(duì)于java.util.concurrent要除外。java.util.ArrayDeque和NavigableMap也是的。For-Each循環(huán)很好,泛型也是如此,即使它們做了一些稍微復(fù)雜的工作。

    Q: Where in the process of programming do you have the most fun?
    編程中的哪個(gè)過(guò)程使你最有樂(lè)趣?

    A: I enjoy many phases, from requirements analysis to debugging. Each of these phases presents me with brainteasers, and solving these brainteasers is what I like best. But nothing makes me feel better than building a reusable component and seeing it get reused.
    我享受于許多的階段,從需求分析到調(diào)試。這些階段中的每一個(gè)都會(huì)呈現(xiàn)給我難題,而解決這些難題則是我最喜歡的。但沒(méi)有什么比構(gòu)建一個(gè)可重用的組件并看到它被重用更讓我感到高興了。


    posted on 2007-06-11 08:33 John Jiang 閱讀(1221) 評(píng)論(4)  編輯  收藏 所屬分類: Others 、JavaSE翻譯

    評(píng)論

    # re: Rock Star Josh Bloch(譯) 2007-06-11 09:13 小林
    先頂后看  回復(fù)  更多評(píng)論
      

    # re: Rock Star Josh Bloch(譯) 2007-06-11 12:00 Sha Jiang
    > 先頂后看
    又不是論壇中的帖子,不用頂 :-D  回復(fù)  更多評(píng)論
      

    # re: Rock Star Josh Bloch(譯) 2007-06-11 14:44 Just
    頭好痛啊!  回復(fù)  更多評(píng)論
      

    # re: Rock Star Josh Bloch(譯) 2007-06-11 15:48 Sha Jiang
    > 頭好痛啊!
    頭痛就要醫(yī)頭 :-)  回復(fù)  更多評(píng)論
      

    主站蜘蛛池模板: jzzijzzij在线观看亚洲熟妇| 亚洲AV无码码潮喷在线观看| 1000部拍拍拍18勿入免费凤凰福利 | 337p日本欧洲亚洲大胆精品555588| 亚洲伦理一区二区| 亚洲国产成人久久| 四虎亚洲精品高清在线观看| 一级中文字幕乱码免费| 最近2019免费中文字幕视频三| 成年性羞羞视频免费观看无限| 亚洲男人的天堂一区二区| 亚洲av成人无码久久精品| 亚洲av无码一区二区三区人妖| 精品国产污污免费网站入口在线| 免费无遮挡无码永久视频| 尤物永久免费AV无码网站| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 免费看的黄色大片| 久久精品国产亚洲一区二区| 亚洲六月丁香六月婷婷色伊人| 一本无码人妻在中文字幕免费 | 成人黄软件网18免费下载成人黄18免费视频| 亚洲国产成人无码av在线播放| 久久精品无码一区二区三区免费| 亚洲熟女少妇一区二区| 亚洲人成未满十八禁网站| 8x网站免费入口在线观看| 亚洲不卡视频在线观看| 免费91麻豆精品国产自产在线观看| 麻豆国产入口在线观看免费| 深夜福利在线免费观看| 日本媚薬痉挛在线观看免费| 亚洲阿v天堂在线2017免费| 国产精品嫩草影院免费| 国产日本亚洲一区二区三区| 亚洲一级毛片免费看| 亚洲精品无播放器在线播放| 久久久久国色AV免费观看性色| 美女被免费网站在线视频免费| 夭天干天天做天天免费看| 亚洲一区精彩视频|