抽空去了微軟開發者大會,但只來得及參加下午場次,"問導遊"(台語)式地橫跨HTML5、WP7及Silverlight 5三條路線聽了四個場子,即便之前對相關議題已多少有些了解,但還是學到些新東西,寫成筆記備忘:
註: 本文只摘要記載個人觀注的部分要點,並未涵蓋各議題之完整範圍;如各位有興趣深入了解,可期待官方提供的投影片跟現場錄影下載(有大台攝影機全程蒐證錄影,應該不是用來監控講師有沒有講錯或抓學員打瞌睡吧? 哈!)

What’s New in HTML5 by ericsk (AKA 上官神人)

HTML5的欟觀介紹: <nav> <footer> <article>等標籤讓HTML的元素結構語意更明確,<video> <audio>提供了內建的影音播放支援,但要跨瀏覽器得準備多種媒體格式(先前已知道此一險惡之處)。
<canvas>, SVG, Geolocation等功能在HTML5中也值得一提,至於Web Database,原本要採SQL形式,最近又轉向Indexed Database,但仍在初步發展階段,可能只有Beta版才玩得到。
CSS3增加了Multi-column LayoutGrid AlignmentFlexible Layout可省卻一些排版苦工。
CSS3支援漸層背景,但現階段若要跨瀏覽器,同一個設定得分別為IE, Firefox, Opera, Safari/Chrome10、Chrome11各寫一次,麻煩得很。
話說,HTML5雖可跨瀏覽器跨平台,但目前仍有一堆煩人的眉眉角角,常需為不同瀏覽器(甚至同一瀏覽器的不同版本)加上專用語法,還出現同一個影音檔得準備多種格式這種鳥事。現階段要搞網站跨瀏覽器,開發及設計人員少不了為此燃燒青春引爆肝臟,我想等未來標準統一的一天(應該會有吧? 不要嚇我),再回頭看應會覺得現在的玩法可憐又好笑吧!

Migrate to HTML5 by 保哥

保哥已經把研討會該場次的重點整理在網站上了, 大家可以直接參考!
這場提到了現階段實現HTML5的戰術,其中一大關鍵在於如何讓不支援HTML5的阿公級瀏覽器也能順利檢視你苦心製作的HTML5網頁而不爆炸。
目前已有些現成的Javascript Library提供協助向前相容: 如html5shiv, Modernizr。html5shiv是讓IE8以前的版本能識別<nav><footer>這些新標籤、而Modernizr則可偵測瀏覽器的技援能力,視需要掛上不同的Polyfill,使舊版瀏覽器也能實現相當的效果,例如: 用Flash物件播放影片來取代<video>標籤的功能。目前已有一大票配合Modernizr使用的各式Polyfill: SVG、Canvas、Video、Audio、Web Form、Web Sockets、Geo-Location、CSS3 Styles... 應有盡有。
現階段想用HTML5開發網站,記得一定要踩著前人的血淚前進站在巨人的肩膀上。
另外還有個好東西: HTML5 Initializer,可以快速產生HTML5模版,產出結果中還藏了不少實戰技巧,像是<script>載入CDN上的jQuery.js後,立刻加一段Javascript確保載入失敗時改掛自己網站上的jQuery檔,就很冷僻但實用的小技巧。(可以連上你的網站卻連不到CDN?? 對,真的可能發生!! 聽保哥提到這點,我才發現自己不孤獨~~)

Build WP7 Application with Existing Web App by Moli

把HTML網頁嵌進手機程式中,就能輕輕鬆鬆打造出給手機用的應用程式。這也是我心中盤算採行的手機程式開發策略,果然我不是第一個不想同時兼學多種手機語言跨平台的懶人。
要做到WP7程式與網頁的Javascript互動並不因難,再整合手機的API就可實現網頁透過Javascript撥打電話、讀取GPS、感應水平儀及裝置移動驅動網頁元素... 等。但前題是需了解手機的相關API,撰寫整合手機功能的函數供Javascript呼叫。當目標提升到要支援不同手機裝置,就面臨了要用iOS Objective-C、Andriod SDK(Java)、WP7 Silverlight各寫一份的挑戰,更甭提要留意不同裝置硬體間的差異會如何讓人生不如死了。
所幸,目前已經有產品如PhoneGap (中文介紹)、Titans Mobile提供跨手機的通用程式介面,讓用HTML寫手機軟體這件工作簡單許多。我想,若只是想寫些應用層面的小工具、或是企業營運方面的一般應用,用網頁來寫手機程式應是很符合經濟效益的策略。

Silverlight 5 Preview by 章立民

Silverlight與HTML5間始終存在瑜亮情節,目前看來HTML5如日中天,Siverlight則被壓得有些喘。
但說實在話,每一項技術都有其優勢,不致於被完全取代,Silverlight 5在3D模型演算能力具有不錯的優勢,看起來比WebGL成熟許多。
如果目標是特定平台的高複雜度3D應用,可以用C#開發應該算Silverlight的一大賣點,只是扯到3D應用,就少不了建3D模型、貼圖、複雜的座標演算法... 感覺上需投入相當的苦心搞懂理論,熟悉各式塑模工具,再搭配一些美感天份,才能略有所成。我... 還是乖乖寫我的Business Application跟小工具就好。

[2011-07-01更新]研討會投影片已開放下載


Comments

# by 小小

有幾個議題,黑哥是如何同時間不同會議地點聽到的?小弟那天也有去,有許多題目都不錯,可惜時間有重複,只能選其中一個。

# by Jeffrey

to 小小,沒學會火影忍者鳴人的分身術,偏偏衝堂的議題又都想聽,就只能使出"趕場"大法,聽完A的前半場,再衝去聽B的後半場(茶包射手指出: 坐不到前排這點是條線索...),再自己揣摩沒聽到的部分。 不過我想過陣子微軟就會釋出完整的課程影音,可以彌補大家分身乏術的遺憾。

Post a comment