2007-02-09

台北一日紀行(上)

  話說在寒假之前,因為偶然的關係,得知了微軟有辦一個 C++ Boost Library 的課程,因為感覺微軟難得辦一個免費又沒有大肆宣傳自家產品的課程,所以就直接去報名了。另外,由於之前打工下來的錢總算可以動用了,所以就打算趁著這次北上的機會,順便去添購一台夢寐以求的數位相機。

  七號到八號之間的夜晚,一整個晚上都被擾人清夢的蚊子吵到無法睡覺,起得特別早,在一番梳洗之後,就去竹北車站買了張竹北到台北的來回車票,來回只要不到兩百元,總感覺比以前上台北所花的錢還要少。

  大約在九點多的時候到了台北,課程是辦在十點開始,所以我就加緊了腳步轉乘捷運前往微軟總部,也許是腳步太快了點,我提早了半個小時就到了會場,到了並報到之後,就在會議室外面的休息室那邊休息了一段時間。

  話說在上班日到這種辦公大樓裡,就有一種自己好像是精英的錯覺,之前在新竹那上班時還沒有這種感覺,大概是這間大樓比較高級,外加上裡面財經相關的公司比較多,對於服儀也比較注重的關係吧。當然,我不算是個精英也是原因之一。

  到了微軟的樓層之後,第一件事情就是先報到,這邊不得不提一下,接待的小姐滿漂亮的,真不愧是國際知名的大公司,門面果然有重視到。另外,仔細注意一下後發現,今天在微軟辦的課程與會議還不少,不過其他活動的內容是什麼,我就沒有特別去注意了。

  大約快要十點的時候,會議室打開了,一進去,講師已經在裡面了。再看看旁邊,其他聽眾也慢慢地進場了,這時候之前那種精英的錯覺才慢慢散去,取而代之的是比較接近學校裡面的那種氣氛。聽不懂?就是「工程師」的那種感覺。(詳閱《呆伯特》系列)

  等到了人差不多到齊之後,課程就開始了。這次的課程內容是在講 「Boost Library」相關的內容,當然,也少不了講許多 C++ 本身的事情,像是一開場就有講到 C++ 的使用者減少了很多,這讓我這個以 C++ 為 Mother tongue 的人感到有些不自在。

  簡單來講,這個課程的主題「Boost Library」就是一個有在未來將納入標準,內含許多交互關係小的方便函式庫的一個集合體。整場課程上的內容並不會說十分艱澀,靠著之前課外自學的一點點勉強可以懂個八成左右。不過說來慚愧,在講到 C++ 的幾本經典,全場的人幾乎都有讀過,特別是前面幾排的,讓我這個不自量力就跑到第三排的尷尬了一下。

  聽了兩個小時的課程,雖然說感覺時間有點不足,後面的部份講得快了些,不過還是學到了不少東西,像是之前只有在做報告時聽過的 Meta-Programming,在看到實例之後才知道這東西是多麼神奇,可以在編譯的時候就把一些之前在 Run-time 才跑出來的常數在編譯的時候就先處理完了,可以有效的改進一個程式執行的效率;不過,感覺這技術在應用到大型程式時會產生一些其他問題,如果說一個大型專案有大量用到這技術,編譯的時間會不會增加到十分恐怖的地步?

「上次說有問題的那個程式處理的怎麼樣?」
「昨天下班前編譯了,現在應該好了吧。」
「嗯,去看一下吧。」
(開始測試)
「問題還是沒解決。」
「快一點!這案子很急,下午就要把東西交給客戶的。」
「可是編譯一次就要花上幾個小時,問題馬上找到也不一定生得出來……」

  以上純粹幻想(一秒)。

  當然,這次並不只講到 Meta-Programming 的部份,還有其他很多很方便,但是在 C++ 裡面就是沒有包含的功能,以後在寫程式的時候,今天所學到的東西,說不定可以幫到不小的忙也不一定。

(To be continued)