<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

       :: 首頁 ::  :: 聯系 :: 聚合  :: 管理 ::
      131 隨筆 :: 1 文章 :: 530 評論 :: 0 Trackbacks
    Oracle OpenWorld 2013(上海)
    Oracle OpenWorld 2013(上海)已經結束,我全程參與了此次技術大會。本文是我參會的所見、所聞、所思與所感,有文,有圖,且無碼。(2013.08.03最后更新)

    Oracle OpenWorld 2013(Shanghai) lasted four days, and included over 300 keynotes, sessions and hands-on labs. 18000+ attendees, including company leaders, industries experts and developers, joined the event, which was said the biggest IT activity in Asia-Pacific area as never before.

    Sessions
    * Java strategy/technical keynote
    Every JavaOne conference must has such keynote, which introduces and demonstrates the latest new JDK versions and features, and prospects upcoming JDK version and features. All parts of Java ecosystem, including JME, JSE, JEE and JavaFX, are involved in the keynote. I was deeply impressed by JavaFX demo by Jim Weaver. The Java champion played musical instruments with a JavaFX application; that's really cool. In this JavaOne, JavaFX has a separated track, and the technology is very highlighted by Oracle. The software giant expects JavaFX to enhance Java's performance on rich application. But outspokenly, it's difficult to take end users to install a JRE beforehand if they just want to run a desktop application.


    * Why should I switch to Java SE 7?
    JDK 6 has rested in peace(exactly, the version isn't completely frozen), and JDK 7 has been released for two years, and even JDK 8 will come next March. But do you migrate your JRE to Java 7? Strings in switch statements, diamond operator, try with resources, multi-catch statement, ... Do you like the compiler sugar? Anyway, the features could improve development productivity. But fork-join framework really touches my heart. Because of complete backward compatibility, you just need to run your application in the new platform, and the performance could be accelerated.

    * The road to Lambda
    Java has been being criticised for implementing modern language features, like closure. The argument around closure implementation has lasted for a long time. Finally, Lambda, the closure for Java, has been finished, and will be distributed with JDK 8. Lambda is regarded as the biggest change since Generics in Java 5. Function Programming (FP) is popular, and Java developers can utilise Lambda expression to apply FP. And JDK 8 extends Collection framework to take advantage of Lambda as powerful as possible. For example, currently we need an iterator or loop to iterate a Collection container, that's so-called external iteration. JDK 8 adds a new method forEach() for Collection interface, and we can iterate a Collection object via internal iteration, that means it's no need to care the iteration details by developers. In fact, it's impossible to debug the iterating process. And the process may apply fork-join if possible to improve performance. That sounds cool!

    * Effective Scala
    Dynamic programming languages are emerging, and more languages, such as Groovy, Scala and Clojure, can run on JVM, and JDK 7 introduced a new instruction "invokeDynamic" to support dynamic languages better. Therefore, I have to pay some attention to other JVM languages. The session "Effective Scala" was provided by TypeSafe, a company founded by Scala creators; Spring founder Rod Johnson joined the company as member of board of directors last year. The session simulated the style of Effective Java, and also introduced some best practices and coding regulations. Frankly, I don't know Scala syntax, like traits, totally, so I don't understand the lecture exactly. But I still obtained something new, like Cake pattern. Do you know the design pattern? I never hear it before this session, but the pattern is well-known in Scala world. It's time to learn another language, and I think Groovy is a good start-up due to it is closer to Java.

    * Taobao GCIH

    Taobao creates GCIH (GC Invisible Heap) based on Oracle VM Hotspot, and allows different VM to access a shared heap. In Taobao business scenario, the shared heap only stores read-only objects. All of the objects are initialized after the application is launched, and not be cleaned before the application shutdowns. Therefore, single VM can consume less memory, that means we can deploy more VMs in single machine. And GCIH cannot be accessed by GC so that reducing the garbage collection overhead.

    * What do you mean, backwards compatibility?
    10gen, the company behind MongoDB, presented the topic. Because old MongoDB driver isn't well designed, so it's difficult to understand and use the driver API. For example, the driver has a lot of find() methods, but how do I know which one is my want. According to the session, method chaining not only makes codes more readable, and the idiom benefits the backward compatibility as well. Generally, method chaining only handle one parameter at each invoking, and application codes don't care the sequence of invoking. In this case, it's no need to provide the methods with several arguments, and the methods are possible to be deprecated in later time due to their ambiguity. Of course, method chaining isn't designed for backward compatibility. And applying backward compatibility is still a hard job, because you don't know what would happen in the future. In fact, many and many APIs are deprecated in later JDK versions.

    Appreciation Party
    In the third evening, Oracle catered a small but exciting party to every attendee. Beer, snacks, professional band, beautiful girls, hot performances, ... were on the stage. All of performances were shown by Oracle employees, and we just rock!



    I was on the scene
    In OTN lounge, I communicated with Jim Weaver and his assistant about JavaFX and UI testing. In this event, my small dream, taking a photo with Java mascot -- Duke, came true ^_^ Additionally, don't forget iron man :-)


    Event Organization
    This is my sixth SunTechDays/OOW, and I must say that the conference was organized the best this time. Professional agenda, considerate attendee service, delicious dessert and drinking, all of them, except for lunch, must be delighted.



    Finally, I must say the event is well worth participating; join it, and enjoy it :-)
    posted on 2013-08-02 11:50 John Jiang 閱讀(1618) 評論(0)  編輯  收藏 所屬分類: EnglishOpenWorld/JavaOne/SunTechDays原創
    主站蜘蛛池模板: 亚洲精品无码久久毛片| 国产伦精品一区二区三区免费下载| 久久精品亚洲男人的天堂| 亚洲国产成人AV网站| 日本高清免费网站| 噜噜综合亚洲AV中文无码| 国产无遮挡裸体免费视频| 亚洲hairy多毛pics大全| 国产午夜免费秋霞影院| 羞羞视频免费网站入口| 精品亚洲视频在线观看| 三级黄色免费观看| 亚洲AV无码久久精品蜜桃| 久久久久久国产精品免费无码| 亚洲国产一区二区三区青草影视| 无码国产精品一区二区免费式芒果| 亚洲欧洲日韩国产综合在线二区| 97av免费视频| 亚洲精品天堂在线观看| 国产免费av片在线播放| 91免费国产视频| 亚洲精品高清国产麻豆专区| 99精品全国免费观看视频| 美女视频黄a视频全免费网站色| 久久久久亚洲AV成人网人人软件| 久久精品免费观看国产| 亚洲制服在线观看| 免费在线观看视频a| a级毛片免费播放| 亚洲中文字幕一二三四区苍井空 | 免费国产a国产片高清| 一级毛片aaaaaa视频免费看 | 亚洲一区二区三区国产精品无码| 成年私人影院免费视频网站| 免费人成视频在线观看免费| 亚洲AV无码久久精品狠狠爱浪潮| 免免费国产AAAAA片| 一级毛片免费播放视频| 亚洲av无码片在线观看| 久久久亚洲精品蜜桃臀| 全免费毛片在线播放|