2009年3月14日 星期六

JavaTwo參加感想

平常在學校老是裝Java之神招搖撞騙
難得這次
JavaTwo有機會再吸收點日月精華
於是早早就報了名,以利日後妖言惑眾

我不太會,於是早了幾分鐘出門
一上捷運,就鎖定一個休閒背包裝筆電的宅男

果然跟著跟著就到了台北國際會議中心

一進場,廣告就強力放送
Java can do everything ....
Java is everywhere, in your computer~~~ in your cellphone~~~ ....
All right, All right, i got it.

梅老師比我早到許久
我挑老師旁邊的位置坐下,寒喧幾句殺殺時間

不消一會兒,開場時間就到了
當然不可免俗的必須來個總經理跟教育長的Opening
類似歡迎各位大金主駕到云云
好了快下台啦,我知道您老比咱家校長還會講


首先第一個就是重頭戲
Thinking in Java作者 Bruce Eckel 的演講
然後這外國大叔居然給我滑雪摔斷了左腿,在家裝死
昇陽!退錢阿!!?以為我為何乖乖的掏出1200NTD!?
開玩笑的,其實我來之前就知道了,不過還是感覺很可惜的
取而代之是介紹Dynamic Language on the JVM(JPython)一段影片(附中文字幕)

前半段是在介紹
Dynamic Language (動態語言,如Javascript,Python) 的好處
跟一般強型別語言(Java, C#)的差異,
以及他對學習 Language的一些看法
(又看到Martin Fowler的名字了,最近好像一直看到?)

後半段再講
Python Java 不同的語法比較
{}區塊跟用縮排
變數宣告跟回傳
物件的建構方式,等等

對我而言,聽起來滿有意思的
之前都是自己亂摸亂玩而已,跟本沒在比較兩個語言的差異
被這樣一比較,興奮感突然又冒上來
做一半的SpringPetStore Python移植版,又想再拿出來玩玩

「這根本是來介紹Python的」老師?
「阿!?喔喔?真的ㄝ」
被騙了...突然才想起這裡是"Java" TWO,怎麼會變成Python
瘸腳
大叔難怪不敢來 ,大概是怕被蓋布袋?

話再講回來,
可以看出Bruce Eckel 真的對Programming Language很有熱忱,
或許該用狂熱形容
而且鑽研的非常深入,不能見到本人心中又多了點惆悵


第二場是
FreeSoftwareOpenSourceLicence
我沒何興趣,
主要是講一些自由軟體授權上的分別,
什麼BSD,GNU,copyleft,Business Model?
喔~這
隨便,等我發達了再來煩惱這個


結果整個上午就結束了,廣告都亂演, Where is Java ?
~~~午餐還不錯吃


ok, Java did come in the afternoon
三個時段各有三個不同主題的場次,我當然都挑A
因為我喜歡後端資無趣資料庫,
另一邊的那種就交給有藝術天份的天才煩惱吧


1.EJB3的理想與現
我來這的主要目的之二,真的是來對了

首先EJB的歷史
EJB1. 先進的思考,小巧玲瓏,功能很少
EJB2.
技術的進步,變的功能龐大,也變的更難用沒彈性
最後Hibernate+Spring聯手幹掉
EJB3.
打不過它們,就加入它們,3以後變成只有規格跟一些介面
實作就交給Hibernate & Spring (還有他們的對手)

簡介一下EJB3架構跟SimpleCode這裡不多寫

後半談主講人使用過的感想(理想與現實比較好聽),
全部都在講
JPA(Java Persistence Application),好幾個想法跟我之前使用時感覺一樣
Annotation設定果然比XML設定好用
EntryManager陽春陽春
EJB3萬歲,EJB2死死去

還有我沒用過,沒啥感覺,
不過大哥是對的!聽他的就是

最後是各家ORM的實作品比較
不愧是業界高手,還能分析比較,
我只用過Hibernate,而且都只是基本語法

不過我下個專案打算追隨大哥 ,用看看EclipseLink(不過這好像是Oracle....)


2.在雲端上喝咖啡(Hadoop)

Cloud computing
相信大家都很熟的,不熟的自己點共筆找!

介紹MapReduce
一樣自己點共筆找吧,都在深網技術
(Deep Web下面)

聽著聽著,我快睡死了
但是
左邊的男同學居然還能抄筆記
還有右邊的女同學,妳聽得津津有味就算了,
不用狂點頭表示贊同啦,我會心虛的

強忍睡意,終於到了DEMO時刻
Hadoop
雖然是JavaCode ,但是還是很複雜,
用了大概八九個
Class才搞定吧
這時候怎麼不來個Class Diagram or Sequence Diagram?
而且我也還不太了解要怎麼真正做到分散式的運算

這種東西果然是要自己摸才會...orz


3.lwdba-開放原始碼的輕量級資料庫存取程式庫

lwdba ,一個Relational Database的程式庫
簡單講,功能比JDBC強大,但是比Hibernates(JPA)弱小
當然學習門檻低跟環境設定複雜度會更簡化
專案主持人兼主講人同時
也是Thinking in Java的中文譯者:王建興先生

整場都在lwdba的使用方法

雖然沒用過,但是我感到很親切..
因為我也做過類似封裝JDBC的事,如同往事歷歷在目

建議同學有機會可以用用,尤其沒經驗又要寫資料庫應用的,
會比直接用
JDBC少非常多麻煩,
應該也會用看看


最後的最後,總經理跟教育長的老梗Ending
抽獎時間老師那張差一號中iphone,殘念


總結
原本是打算做的看熱鬧的鄉民,
不過意外的收穫頗多,
實體
戰利品: Duke一隻,SunT-Shirt一件,背包一個,筆記本與筆少許,補習班宣傳單無數
技術面的話聽到
Python與Java比較,EJB3高手用後感,lwdba 原設計者的建議跟想法

當然有下次我還會去,我跟某外國B大叔不一樣,打斷腿我也去