[Other]2010 Tech.Day Memo

2010/09/28~2010/09/30是微軟2010年的Tech.Day大會,今年是第一次參與這樣的盛會,連續上了三天滿滿的課,其實並不會比上班來的輕鬆,卻有著與上班不一樣的心境,感覺十分的充實。

但我相信同樣是參加這樣的盛會,也有人會與我有不同的感受,就拿我這邊來說,公司上層是覺得這樣的課程沒有幫助,介紹新東西的性質居多,還不如等外面教育機構一連貫的課程出來再去學習會比較有幫助。當然外面的機構有一連貫課程對於學習是不錯的選擇,可是畢竟沒有參加過,總是想去見識見識,而且我覺得如同”這樣思考 早知道有多好”這本書所述,世界上有飛機人與滑翔機人兩種人,滑翔機人需靠風飛翔,需要有人準備好教材與課程,把知識直接灌輸才能學到東西;而飛機人則具備引擎,可自行飛翔,能自行找方法、找資料學習,對於期望朝滑翔飛機人邁進的我來說,學習絕對不該是期望都有一連貫準備好的課程,我相信多少能從中吸收到東西,只是或多或少的問題而已,重點還是看個人怎樣把這些零碎的知識慢慢的補齊,把這些知識變為自己的東西,就算只是一個KeyPoint,都將是指引學習方向的一盞明燈。所以這次是請特休掏腰包去參加,不過也有部分原因是我不想回來在花時間報告就是了…XD。

這三天學習目標主要是設定在WP7、VC++.NET、VS2010、Silverlight、XNA、Azure…等。WP7的課程整個上下來,感覺開發上並無太大的進入門檻,可以用XNA或是Silverlight來作開發的動作,若是選用Silverlight這邊來作開發,會用Expression Blend就可以完成大部分的介面功能,要把現有的Silverlight程式移植到WP7中也很容易,撥號等手機控制部分的程式,老師投影片上都有帶出,開發時若要控制可查閱老師上課的投影片,其它還有講到一些設計上的基本規範。

XNA的部分看起來也十分容易上手,tihs老師以開發血腥打地鼠遊戲為例,清楚的帶出整個遊戲開發上的流程,感覺XNA Framework在類別的使用上都很直覺,也很容易開發,需特別注意的是編寫的流程上與一般程式有些出入,XNA程式在編寫上有Game Loop的概念,在Game Loop中的程式是會循環執行的。

其它像是Visual Studio 2010 Extensions 開發實務、利用 ASP.NET MVC 專案特性實現 TDD 測試導向開發、Visual Studio 2010 與最新 C++ 整合開發這幾門也讓我獲益不少。Visual Studio 2010 Extensions 開發實務這門課,曹老師為了講解Extension的開發帶出了Managed Extensibility Framework的概念與使用方式,點通了我之前在自修時所被卡住的部分,了解了Import與Output這兩個屬性之間的關聯與作用。

至於保哥的利用 ASP.NET MVC 專案特性實現 TDD 測試導向開發這門,對非Web開發人員的我來說,雖然有稍微玩過HTML、ASP、與ASP.NET,在講到MVC的Code時仍是有點吃力,雖然吸收有限,但在講解TDD的觀念時,又點通了之前一直搞不懂的VS2010的Suggestion Mode,一直以來都是知道Suggestion Mode是跟TDD有關的,但卻一直看不出Suggestion Mode跟Complete Mode之間的差異,經保哥提點,原來兩者的差異只在Suggestion Mode不會自己幫我們選取,因此我們能在類別尚未存在的情況下快速的撰寫程式碼,不會因此被Intellisense選成其它非期望的既有類別,再搭配Generate From Usage功能,就可以創建出新類別的框架了。此外,TDD與測試的流程有了更深入的了解,對於Mock與Stub也有了初步的認知。

而Visual Studio 2010 與最新 C++ 整合開發這門課,則是讓我發現原來VC++.NET還有一些東西是我沒注意到的,像是MFC支援Win7,能使用Ribbon與TaskBar、平行處理支援、可以使用Lambda語法、15個新的函式、與rvalue…等。

當然其他課程都相當的不錯,像是肥馬哥的海綿寶寶職涯生態論、彭靖灝老師的軟體架構及模型設計 - 活用 Visual Studio 2010 降低系統維護成本…都十分的值回票價,只是篇幅有限摘錄幾個印象深刻的作些紀錄。

除了課程外,參與這樣的活動又認識了一些同好,像是肥馬哥、佛心Jed哥、小風…等,從同好之間彼此的閒聊中也能有所收穫,像是小風提到的Rx,就是後續空閒時一個很好的學習目標。

這次的活動參與收穫實在很大,雖然許多觀念在我的腦中都還是零碎的點滴,但這些觀念將隨著往後的學習逐漸累積,終究會在我腦中成形。