Sun Tech Days 2007 -- Preview
一年一度的Sun Tech Days又將開幕了,本文回顧了我前兩年參會的體驗(yàn),并分析了本次會議中我個人所感興趣的幾個主題。(2007.10.12最后更新)從上周三開始,本年度的Sun科技日(Sun Tech Days,STD)就開始接受報名了。官方網(wǎng)址:http://www.suntechdays.cn,優(yōu)惠期截止到9月29日之前(我想應(yīng)該就是到9月28日為止吧)。在優(yōu)惠期內(nèi),單個人的會費(fèi)是195元,和去年的會費(fèi)一樣(Well,沒有隨社會物價的上漲而上漲 ^_^)。
今年,將是我連續(xù)第三年參加STD了。
2005年,當(dāng)時還在武漢上大學(xué)(我本身也是湖北人)。那時學(xué)習(xí)Java不到1年,斷斷續(xù)續(xù)的,滿打滿算就11個月,學(xué)習(xí)也不努力,連門都沒入(在學(xué)校里自學(xué),效率太低了) :-( 但不知道為什么,對Java/軟件開發(fā)非常感興趣,而對自己的本專業(yè)--通信,就是一點(diǎn)興趣都沒有(嗚嗚嗚,浪費(fèi)了7年時間啊!)。2005年恰逢Java 10周年,從CSDN上看到要在北京舉辦JavaChina 2005(其實(shí)也就是STD)的消息,就報名參加了。對2005年的感覺就是,規(guī)模很大,北京主會場有4000多人,另外8個城市的分會場也有4000人左右。畢竟是Java 10周年嘛,其它年份的STD都達(dá)不到這個規(guī)模(當(dāng)然,JavaOne的規(guī)模每年都會超過STD)。2005年時的我,對Java只是一知半解,在會議的眾多session中,我也不知道應(yīng)該聽哪些主題,只是選擇了一些Java語言級方面的session去聽了。現(xiàn)在回想起來,也不知道當(dāng)時聽到了些什么。當(dāng)年的最大收獲就是和Java之父James Gosling有一張集體合影。哈哈,這難倒就是獲得Sun認(rèn)證的最大好處嗎 *_* 因?yàn)槲沂窃陧槺銋⒓?Sun認(rèn)證群英會"時有幸得到了這個機(jī)會。這次活動大大激勵了我學(xué)習(xí)和應(yīng)用Java的熱情。
2006年,我剛剛畢業(yè),目前一直在北京的一家電子商務(wù)類的公司工作。雖然在當(dāng)時還沒有直接地參與Java項(xiàng)目的開發(fā),不過項(xiàng)目都是和Java相關(guān)的(我當(dāng)時做系統(tǒng)方面的工作),并且一直堅(jiān)持對Java技術(shù)的學(xué)習(xí)。其實(shí),我自感自己的Java基礎(chǔ)還是不錯的,2004年,通過"Sun認(rèn)證Java程序員 SCJP"(88%得分率),2005年通過"Sun認(rèn)證Java開發(fā)員 SCJD"(97%得分率),而且平常學(xué)習(xí)時很注重基礎(chǔ)知識。出于不斷學(xué)習(xí)Java技術(shù)的想法,我又參加了當(dāng)年的STD。此時,畢竟有些經(jīng)驗(yàn)了,知道的東西也多了些,再聽STD,就會有自己的選擇了。我仍然對Java語言的基礎(chǔ)部分比較關(guān)注(Java 5的新特性,Java 6的新特性),另一個很關(guān)注的就是數(shù)據(jù)庫方面(Java DB)。Java DB的session,我認(rèn)為是當(dāng)年最好的。2006年的收獲確實(shí)不少,很多場景我現(xiàn)在還有很深的回憶。另外,發(fā)現(xiàn)在自己的英語水平又有提高了,這個收獲可能更大啊 @_@
今年,我已工作一年有余,有了一些實(shí)際的Java項(xiàng)目開發(fā)經(jīng)驗(yàn),并且學(xué)到了更多的Java方面的知識,有了新的提高。關(guān)于今年的STD,其中有幾個session確實(shí)是我本人十分期待的,如關(guān)于:
Open JDK。Java是真的開源了,而不是"半"開源(javac、core API、...,all of them have "Full" Sources)。目前我們使用的Sun JDK,不能debug Java API(因?yàn)閟rc.zip中的源文件與實(shí)際使用的rt.jar中的class文件無法完全對應(yīng)上,它們不是"一脈同生"的。"Who"動的手腳,F(xiàn)T!),這讓我很多次的很、很、很不爽。Well,現(xiàn)在我們可以用OpenJDK了。OpenJDK就是Java,而不是Java的一個分支(Apache Harmony?),JDK 7的新特性將首先在Open JDK中實(shí)現(xiàn)。OpenJDK與Sun JDK的關(guān)系,就如OpenSolaris與Sun Solaris之間的關(guān)系。一個是開源社區(qū)主導(dǎo)的開源項(xiàng)目,另一個是Sun公司的產(chǎn)品。但Sun的產(chǎn)品(JDK,Solaris)是從開源項(xiàng)目(OpenJDK,OpenSolaris)中來的,只不過Sun在內(nèi)部另外再做了一些測試。可能Sun產(chǎn)品的穩(wěn)定性更強(qiáng)些,但差別應(yīng)該很小,因?yàn)镾un這些產(chǎn)品的源代碼最終還是要放到相關(guān)的開源項(xiàng)目中。
Consumer JRE。當(dāng)前的JDK/JRE太大了?Java程序的啟動(特別是冷啟動)太慢了?Consumer JRE很快就要來了。還有Java Kernel,它能像Linux Kernel那樣出眾嘛?
Java DB。我一向關(guān)注數(shù)據(jù)庫應(yīng)用,去年聽了,今天還要聽。超級小(但比 新玩意兒(也許這次要換講師了?!)。
Swing。我個人(or,一個人?)最喜歡的Java"表現(xiàn)層"。"UI"可能是Java最弱的方面了。Web方面的表現(xiàn)層框架,用起來都不方便(和M$ .Net的WebForm差太遠(yuǎn)了);由于Java的桌面應(yīng)用不受多數(shù)人的關(guān)注,而且還受SWT的沖擊,Swing/AWT的應(yīng)用面只能很小了。但我就是喜歡這種純Java的"表現(xiàn)層",它那如此優(yōu)秀的組件化恐怕是其它Web表現(xiàn)層框架無法達(dá)到的(JSF的組件化是在模仿Swing)。在Java使用GPL v2協(xié)議開源之后,可以與Linux系統(tǒng)兼容(目前Ubuntu 7.0.4已默認(rèn)安裝JRE 6),這為Java桌面應(yīng)用提供了更多機(jī)會。
Concurrency。該主題是今年Java One的session之一。java.util.concurrent包是JDK 5的重要新特性。在JDK 5之前,大家在編寫Java多線程應(yīng)用時,只能使用Thread,Runnable和wait,notify,notifyAll,...等少數(shù)幾個類/接口和方法。大量的工作都需要應(yīng)用程序員自己去完成。現(xiàn)在有了concurrent包,相信會給大家提供更多的便利。該包目前受到大師們的廣泛重視。關(guān)于它,已經(jīng)有了專題書籍"JAVA CONCURRENCY IN PRACTICE"(主要作者Brain Goetz是JSR 166--"Concurrency Utilities"的核心成員,合作者還包括Joshua Bloch這樣的Java Guru)和"Concurrent Programming in Java: Design Principles and Patterns"(作者Doug Lea是JSR 166和OpenJDK項(xiàng)目的領(lǐng)導(dǎo),concurrent包的創(chuàng)始人);Bruce Eckel的"Think in Java 4th"有一章專門講它;Joshua Bloch在他的"Effective Java"第二版(尚未完成)中也將會為concurrent單辟一章。雖然在實(shí)際的工作中還沒有機(jī)會編寫多線程應(yīng)用,但一直對它十分感興趣。早前在參加SCJD考試時,做的一個C/S應(yīng)用就使用了多線程。但那時是使用JDK 1.4,沒能用到concurrent包。而且整個多線程機(jī)制也十分簡單:由RMI分派線程,自己寫一個Lock管理器,再加上同步。已經(jīng)買了一本"JAVE CONCURRENCY IN PRACTICE"中文版,將會繼續(xù)研究多線程應(yīng)用。
Garbage Collector。我不得不關(guān)注的Java Coding基本功,該主題也是今年JavaOne的session之一(看來世界上的Guru、牛X、高手們都是很重視基礎(chǔ)的,I love :-)。(如果有Exception Handle方面的session就好了,這也是Java的關(guān)鍵基礎(chǔ)之一)。
JSF。不得不說,我在Java Web表現(xiàn)層開發(fā)方面的"造詣"頗小。因?yàn)槲艺J(rèn)為Web表現(xiàn)層應(yīng)用并不是純Java的(如前所述,我喜歡Swing的原因之一就是它的純Java性),做Web表現(xiàn)層開發(fā),不是完全在做Java開發(fā)(JSP,JavaScript,HTML,CSS,...)。在主流的幾種Java Web表現(xiàn)層框架中,JSF也不是最常用的。不過,由于JCP把JSF作為Java EE 5規(guī)范的一部分,那么所有要兼容Java EE 5規(guī)范的應(yīng)用服務(wù)器就必須提供自己的JSF實(shí)現(xiàn)。既然主流的應(yīng)用服務(wù)器都已經(jīng)(如WebLogic 10,Kingdee Apusic 4--關(guān)注一下國貨撒)或?qū)⒁?如JBoss 5)默認(rèn)提供JSF框架,那么我們也許可以想當(dāng)然的認(rèn)為,使用JSF的比率將來肯定會有所提升。大廠商們的這種做法,還真有點(diǎn)"霸權(quán)主義"、"強(qiáng)權(quán)政治"的意味。不過,公道自在人心,還是要相信群眾哦。
Java FX。M$ Silverlight的"殺手"?但我似乎沒必要去做那些炫目的RIA。
...
為STD打了一次廣告,但是免費(fèi)的。個人認(rèn)為多參加一些此類技術(shù)活動,對自己的技術(shù)發(fā)展是十分有利的。
在參加完今年的STD和Netbeans Day之后,我會為每一天的活動寫一篇隨筆,以飧眾友。
See you at Sun Tech Days 2007!
posted on 2007-10-30 16:28 John Jiang 閱讀(1820) 評論(14) 編輯 收藏 所屬分類: Others 、Java 、OpenWorld/JavaOne/SunTechDays 、原創(chuàng)